git常用命令


前言
平时用git都是git clone和git push,没有过多操作;打工以来,才知道团队开发还有git pull和git checkout,甚至git reset;哈哈哈,可能你一口气看下来也没有拎得清,记录一下各个场景的使用情况。

  1. 多分支并行开发
    假设远程已经有多个分支(test1,test2)在开发中,如何并行开发?

获取远程仓库某分支(test1)代码:
git clone https://xxxx.git -b test1
1
一通开发后,上传代码到远程test1分支:
git add .
git commit -m “提交信息”
git push origin test1
1
2
3
多分支开发:

创建本地分支并切换到新分支
拉取远程分支代码
git checkout -b test2
git pull origin test2
1
2
推送到远程分支test2
git add .
git commit -m “新分支test2”
git push origin test2
1
2
3
合并分支:(将test2合并到test1分支中)

确定现在在本地test2分支,同时代码和远程test2分支保持一致为最新代码
git checkout test2
git pull origin test2
1
2
拉取远程test1分支代码
git pull origin test1
1
修改冲突(查找<<<<<<修改)
推送到远程test2分支
git add .
git commit -m “合并test1到test2”
git push origin test2
1
2
3
ok,以上都是一般开发的正常流程!

往往开发不是只记得git命令就OK的,各种协同开发的坑还是会打湿了河边人的脚。

2.协同开发冲突
协同开发就是不停的git push和git pull,上传自己的代码,拉取别人的代码,如有冲突,解决。

coderA和coderB同时开发一个项目,什么时候容易有冲突?

修改冲突:A,B同时修改了同一处代码,修改内容不一致;A已提交代码到远程分支,B在本地修改了同一处,拉取远程分支合并
解决办法:谁代码效率高听谁的,可以查找<<<<<或报错信息定位到代码,根据修改逻辑保留正确且代码效率高的一个人的代码就可

文件冲突:文件夹目录移动或删除,git有工作区、缓存区、版本库,一般在编译器里面操作可以跟踪文件状态,如果一不小心在文件夹或者意外删除修改,文件冲突是相对难改的

3.反悔机制
远程的代码无误,本地一通修改后,发现效果不是理想的效果,git
是可以回退版本的:

查看查看在你上次提交之后是否有对文件进行再次修改
查看最近提交代码的版本号
重置版本号
从最近一次 commit 或者仓库中拉取(检出)代码,会覆盖掉当前 unstash 的修改
git status
git log
git reset 12432425252525252521456153443
git checout .
1
2
3
4
当然git reset的用法不止这一点点


文章作者: 品客
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 品客 !
评论
  目录