1. 以下场景的操作都是同样的,包括:新建了文件、删除了文件、独占式修改文件(即不存在多人同时修改一个文件的情况)
- 提交
项目修改完成后,选中项目,右键Team->Commit
一般是选择Commit,把源码的改动先提交到本地代码仓库,然后在"Git Respository"视图中,选中相应的仓库,右键,Commit
出来和提交界面一样的图,但是不用再填写Commit message,选择变化的文件,直接“Commit and Push",提交到远程代码仓库就可以了
- 同步
队员要同步代码时,在"Git Respository"视图中选中本地代码仓库,右键pull操作就可以了
这里试了下,这几个很容易混淆:
(1)pull:把代码从服务器代码仓库上拉下来,并且和本地自动执行Merge操作;
(2)Fetch From UpStream:只是拉下来,没有自动的Merge操作;
(3)Fetch:这个是复杂版的,可以配置不少东西
2.冲突的解决
以上场景都太理想了,实际工作中,很多时候多人会对同一个文件进行修改,例如:A和B开始是同步的,A打开File1文件修改后提交,B也打开File1修改了想提交,这时就发生了冲突了,在提交到远程仓库时,git会提示:
要解决冲突,可以按以下步骤进行:
(1)在“Git Repository"中,右键"pull"操作,这时会把本地和远程的代码以明显的方式标注出来,如下图(例如1.css文件发生了冲突,项目也会红色标注)
(2)选中1.css,右键,Team-->Merge tool
(3)把右边的代码复制过去后,保存;
(4)再次选中1.css,右键,Team->add to Index,冲突自动消失,文档上那些明显的标注符号也没有了
(5)可以再次Commit到远程了。