我已经成功地为 Android 镜像(包含多个 git 存储库)设置了 gitosis。在 gitosis.conf 中的 writable= 之后添加新的 .git 路径时,我设法插入了一些换行符。当我收到以下解析错误时保存、提交并推送到服务器:
Traceback (most recent call last): File "/usr/bin/gitosis-run-hook", line 8, in load_entry_point('gitosis==0.2', 'console_scripts', 'gitosis-run-hook')()
File "/usr/lib/python2.5/site-packages/gitosis-0.2-py2.5.egg/gitosis/app.py", line 24, in run return app.main()
File "/usr/lib/python2.5/site-packages/gitosis-0.2-py2.5.egg/gitosis/app.py", line 38, in main self.handle_args(parser, cfg, options, args)
File "/usr/lib/python2.5/site-packages/gitosis-0.2-py2.5.egg/gitosis/run_hook.py", line 75, in handle_args post_update(cfg, git_dir)
File "/usr/lib/python2.5/site-packages/gitosis-0.2-py2.5.egg/gitosis/run_hook.py", line 33, in post_update cfg.read(os.path.join(export, '..', 'gitosis.conf'))
File "/usr/lib/python2.5/ConfigParser.py", line 267, in read self._read(fp, filename)
File "/usr/lib/python2.5/ConfigParser.py", line 490, in _read raise e
ConfigParser.ParsingError: File contains parsing errors: ./gitosis-export/../gitosis.conf
(...)
我删除了换行符并修改了提交
git commit -m "fix linebreak"--amend
但是 git push 仍然会产生完全相同的错误。这让我相信 gitosis 正在阻止我做任何进一步的 push 。
我该如何恢复?
最佳答案
我经常这样做。 :-) 答案是登录到 gitosis 服务器并在那里编辑配置文件的副本。在拥有 gitosis 实例的用户的主目录中,应该有一个名为 .gitosis.conf 的链接(它实际上指向 gitosis-admin.git/gitosis.conf)。编辑该文件并解决那里的问题;然后,当你下一步时,它会没事的。
关于git - 如何从推送由于换行符导致解析错误的 gitosis.conf 文件中恢复?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1300275/