美文网首页
git 常用操作

git 常用操作

作者: 晨曦中的花豹 | 来源:发表于2023-06-25 11:17 被阅读0次

    需求开发完成,准备将开发分支合入master分支。

    // 拉取最新的云端分支信息
    git fetch
    
    // 切换至 master 分支
    git checkout master
    
    // 更新 master 代码
    git pull -r
    
    // 合并开发分支,并合并成一个新的提交feature/fanjie/gerrit-0702 仅用于举例,需替换为自己的开发分支名
    git merge feature/fanjie/gerrit-0702 --squash
    
    // 解决冲突
    ...
    // 提交
    git commit
    
    //提交review
    git push origin HEAD:refs/for/master
    
    // review未通过,修改后不要重新提交,使用以下命令行将改动合并入上一次提交
    // (可以保证changeId不变,review代码的同学也可以很清楚的看到第二次提交改动的地方)
    git commit --amend
    // 再次提交review
    git push origin HEAD:refs/for/master
    

    改动的临时存储,比如正在开发的东西还不具备提交条件,但是临时需要去别的分支工作,可以通过以下命令行进行临时存储

    git stash save "临时保存" // 存储
    git stash pop // 取出
    

    同步云端代码

    git fetch
    

    开发中时刻保持自己的分支是基于最新的master的,这样的好处有很多,代码冲突能及早发现并解决,不至于最后再去大范围的解决冲突问题

    git rebase master
    

    将其他分支的提交迁移过来,比如我们在demo上边的改动,有用的内容不想再写一遍,可以通过这种方式直接将demo改动的代码迁移过来

    // 98cce07是当前分支之外的其他分支的提交
    git cherry-pick 98cce07 // 直接在当前分支生成提交
    git cherry-pick 98cce07 --no-commit //不在当前分支生成提交,只把代码改动迁移过来
    

    代码回滚 ~1代表回滚一个提交

    git reset HEAD~1
    

    代码重置到最新的当前分支提交

    git reset --hard
    

    想要当前分支代码还原到最新的master分支代码,常用于当前分支要与某一个分支代码拉齐

    git reset --hard origin/master
    

    回滚某次提交的代码,生成新的提交,与reset区分

    git revert 98cce07
    

    清空缓存,并不是删除文件,比如在.gitignore中已经添加了对某个文件的忽略,但是可能在不经意中强制跟踪了文件的修改,导致忽略失效,这个时候,手动调用下这个命令,就会重新将.gitignore中忽略的文件重新忽略

    git rm --cached .
    

    设置git默认编辑器,我常用Sublime Text

    git config --global core.editor "/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl -w"git
    

    更多git只是学习请看Git - Book

    相关文章

      网友评论

          本文标题:git 常用操作

          本文链接:https://www.haomeiwen.com/subject/fbwyydtx.html