目前博主所在公司呢除了远程的git主仓库,同时每个人还从主仓库fork了属于自己的git子仓库(这样做有利于review代码,也能保证主仓库代码少受点代码冲突的干扰),画个简易的流程图吧。ps:个人觉得通过fork仓库和本地建立多个分支避免代码冲突的效果差不多

Git 工作过程中遇到的问题小结_撤销

    

  • git基本命令

    参考这篇博客,写的已经很详细了:https://blog.csdn.net/halaoda/article/details/78661334

  • 关联本地分支与远程分支

git branch --set-upstream-to origin/devtest devtest
  • 如何运用git命令进行一些回退操作?

情况一:不小心使用了add .或者add 错了某个没有必要提交的文件,但是还未commit

git status //先看一下add 中的文件 
git reset HEAD //如果后面什么都不跟的话 就是上一次add 里面的全部撤销了 
git reset HEAD XXX/XXX/XXX.java //HEAD 后面加上已add的文件名能指定撤销某个文件

情况二:撤销已commit的内容

git log //找到之前提交的git commit的id,使用relog也行
git reset --hard commit_id //完成撤销,同时将代码恢复到commit_id 对应的版本
git reset commit_id   //完成Commit命令的撤销,但是不对代码修改进行撤销,可以直接通过git commit 重新提交对本地代码的修改
  • 避免冲突的代码提交规范

四步走:add 、commit、pull、push 万无一失(绝大部分情况)

git add -A   删除文件和增加所有改动的文件

git commit -m “xxxx”   提交msg

git pull 拉取远程分之,有冲突先解决冲突,解决后再次add和commit

git push  推送到远程分之

注意⚠️:如果是和我部门一样的情况,是通过fork仓库而不是建立本地分支来避免代码冲突,编写代码前进入git子仓库-Settings-Fork syncing  查看有没有未自动合并代码,点击Synchronize

手动合并完代码后(如果合并后有冲突按照提示步骤解决冲突即可)再进行代码编辑,add,commit , pull ,push操作