引言:失败的人只有一种,那就是在抵达成功前放弃的人。
这个问题困扰一周,网上是在找不到解决办法,连续奋战一周到11点坐最后一班地铁都没解决掉。
主要的原因应该是我对Python不是很熟悉,奔溃到已经快放弃看Pro Git的地步,还好柳暗花明,
问题终于解决。
一般性的步骤Pro Git已经讲解的非常详细,我这里就结合着EGit重点讲一下我遇到的三个难点,
但是解决办法绝不是难点,只是没想到。
1.eclipse的ssh2节点的配置更改后一定要重启,否则密钥不生效,这个希望eclipse可以改进啊。
2.这个也是最让我纠结的一个问题,搜了N多国内外论坛才得以解决,就是在gitosis-init的时候遇到
OSError: [Errno 2] No such file or directory,为了让更多人解决这个BUG我就不贴图了,贴文字容易让其他开发者搜索到.
[root@namenode gitosis]# sudo -H -u git gitosis-init < ../.ssh/[email protected] Traceback (most recent call last): File "/usr/local/bin/gitosis-init", line 7, in ? sys.exit( File "/usr/lib/python2.4/site-packages/gitosis-0.2-py2.4.egg/gitosis/app.py", line 24, in run return app.main() File "/usr/lib/python2.4/site-packages/gitosis-0.2-py2.4.egg/gitosis/app.py", line 38, in main self.handle_args(parser, cfg, options, args) File "/usr/lib/python2.4/site-packages/gitosis-0.2-py2.4.egg/gitosis/init.py", line 138, in handle_args user=user, File "/usr/lib/python2.4/site-packages/gitosis-0.2-py2.4.egg/gitosis/init.py", line 75, in init_admin_repository template=resource_filename('gitosis.templates', 'admin') File "/usr/lib/python2.4/site-packages/gitosis-0.2-py2.4.egg/gitosis/repository.py", line 63, in init close_fds=True, File "/usr/lib64/python2.4/subprocess.py", line 419, in call return Popen(*args, **kwargs).wait() File "/usr/lib64/python2.4/subprocess.py", line 550, in __init__ errread, errwrite) File "/usr/lib64/python2.4/subprocess.py", line 993, in _execute_child raise child_exception OSError: [Errno 2] No such file or directory
这个问题的解决办法很简单,可能与我对python不熟悉有关,相信不熟悉python的开发者也很多,附上解决办法:
ln -s /usr/local/bin/git /usr/bin/git
3.再说说这个令我泪崩的画面,一定地址要写成git@hostname:gitosis-admin.git 其他方式一概不生效
强烈推荐Pro Git这本书,git讲解的很透彻,不过Egit方面的资料还是比较紧缺的所以我之后的git系列文章主要
围绕egit怎样实现书中的一些功能,操作以及工作流展开。