1 引言
此前用TortoiseSvn习惯了,所以,转到git时也同时选择了TortoiseGit工具。
同时,对比了可视化工具和git命令的操作,来深入理解git解决冲突的方式。
2 使用远程仓库替代本地仓库的内容
2.1 TortoiseGit做法
using “MERGE_HEAD(origin/HEAD”,表示使用远程仓库的内容,origin,代表的就是远程仓库。
选择该选项,就会用远程仓库的内容,替代本地的内容。
2.2 git做法
git checkout --theirs <文件名>
:检出远程分支(MERGE_HEAD)的文件版本,覆盖本地分支的更改。
git add <文件名>
:解决冲突后,将文件添加到暂存区。
git commit
:提交更改,以完成合并过程并保存远程分支的更改。
示例:
$ git checkout --theirs bin.7z
$ git add bin.7z
$ git commit -m "解决冲突"
3 使用本地仓库替代远程仓库的内容
3.1 TortoiseGit做法
using “HEAD”,表示使用本地内容,替代远程仓库内容。
3.2 git做法
git checkout --ours <文件名>
:检出本地分支(HEAD)的文件版本,覆盖远程分支的更改。
git add <文件名>
:解决冲突后,将文件添加到暂存区。
git commit
:提交更改,以完成合并过程并保存本地分支的更改。
示例如下:
$ git checkout --ours bin.7z
$ git add bin.7z
$ git commit -m "解决冲突"
4 总结
TortoiseGit可视化工具,比较直观。
但其实更推荐git命令,尤其在刚开始学习git时,尽量多用命令方式。
结合二者的方式,理解起来更好!