Git EGit的使用心得与技巧

一图胜千言

Git的基本使用


下载项目

GitHub略卡,因此使用coding.net作我代码的托管,一样也支持pages服务,之后再转到GitHub上git

下载项目有Https和SSH两种方式:服务器

  • Https是输入用户名和密码进行下载dom

  • SSH是使用秘钥的方式eclipse

SSH的方式就是本身本地random一个公钥和私钥,而后把公钥交出去,本身保存好公钥和私钥,链接的时候不用输入密码,直接就能够链接。ssh

eclipse能够自动生成秘钥:Window-preferences-General-Network Connections-SSH2测试

​下图中ssh-rsaAAAAB3...就是公钥。fetch

生成秘钥

存放路径

下载项目:进入eclipse的Git Repositories,输入URL(https或者ssh),而后指定本地的仓库位置,项目就会下载到本地。而后经过eclipse的导入项目功能,把代码导入进来,但不要勾选复制到工做空间,由于这样复制的代码不会加入版本控制。spa

提交

Git提交步骤是先要add,而后commit,最后push。add就比如让Git知道这个文件须要加入版本控制,commit后提交到本地仓库,这也就是Git与SVN的差异之一,Git没有中心服务器的概念,没有网也能够提交。有网的时候再push到远程仓库。在eclipse中使用EGit能够直接commit替代先add再commit的两步操做,可是这里要点击这个按钮才能看到未加入版本控制的文件。.net

提交代码

更新

在eclipse里更新直接pull就能够了,pull至关于先fetch+merge,先将远程仓库更新到本地,而后合并,若是有冲突的话会提示解决。版本控制

覆盖更新

进入同步工做空间进行对比,右键选择要恢复的文件,选择Overwrite

冲突解决

​冲突解决的方法是先进行同步工做空间发现有冲突的文件后,先pull,这时候会出现冲突标记(HEAD>>>>>><<<<<<<<<<<),而后右键冲突的文件Merge Tool进行解决,解决后,先add,而后commit,最后push,冲突就解决了。

分支

​分支又是Git与SVN一个不一样的地方,也是让我感受Git强大的地方。当下载项目后,会有一个master主分支,当我开发新功能,或者修改bug时候,使用SVN的时候我会直接在上面修改,修改完测试,成功后提交,没有开发完或者没改完的文件不提交。而如今使用Git的作法是直接建立对应的bug、新功能等分支,不直接在主分支上修改,等新分支开发完成后,直接合并到主分支上去。惬意~

命令


删除远程分支

$ git push origin :test
push同名空分支,也就是至关于删除分支。

须要注意的问题


  • ​通常我使用git更多的采用https方式下载项目,由于比较方便,若是提交大文件的话,要采用ssh的方式,不然有可能会产生问题。