• Gerrit常见命令及最佳实践


    概述

    本文记录了笔者在使用Gerrit(一种免费、开放源代码的代码审查软件)过程中的一些微小的经验,在这里做个简单的分享。

    克隆工程

    git clone ssh://tusi@xx.xx.cn:29428/project-name
    

    如果使用了Git代理,请将xx.xx.cn:29428换成代理后的ip:port

    git clone ssh://tusi@ip:port/project-name
    

    创建develop分支

    一般我们不会将代码直接提交到master分支,而是会选择在develop分支进行开发

    git checkout -b develop origin/develop
    

    添加到暂存区

    修改代码后,将所修改的代码从工作区添加到暂存区

    // 添加所有文件到暂存区
    git add .
    // 添加某目录或文件到暂存区
    git add src
    

    提交暂存区改动

    将暂存区内容提交到版本库

    git commit -m '测试commit'
    

    推送到远程分支

    git push origin HEAD:refs/for/develop
    

    常见报错

    先执行这两条命令,命令中的信息改成自己的

    gitdir=$(git rev-parse --git-dir); scp -p -P 80 tusi@ip:hooks/commit-msg ${gitdir}/hooks/
    git commit --amend
    

    再次push

    Gerrit merge conflict

    1. Gerritabandon这次push
    2. 软回滚
    git reset --soft origin/master
    
    1. pull代码
    git pull
    
    1. 再次commit, push

    最佳实践

    git status检查仓库状态

    一个很好的习惯,add, commit, push等操作前后都可以用git status检查下,有助于理解Git的原理。

    git status
    

    hotfix合入master

    git merge origin/hotfix/20190909
    git push origin HEAD:refs/for/master
    

    强制与远程分支同步

    慎重操作!!!会覆盖掉本地代码!

    git reset --hard origin/develop
    

    git add 后想撤销

    不小心添加了文件到暂存区?使用以下命令:

    git checkout -- src/main.js
    

    git commit 后想回退

    // 不小心commit了1次
    git reset --soft HEAD^
    // 不小心commit了2次
    git reset --soft HEAD~2
    

    紧急bug来了,临时保存feature代码

    1. 先保存代码
    git stash
    
    1. 检查确认下
    git stash list
    
    1. 切换分支去修复bug
    2. 修复完毕,切回feature分支,释出stash代码接着干
    git stash pop
    

    首发链接


    扫一扫下方小程序码或搜索Tusi博客,即刻阅读最新文章!

    Tusi博客

  • 相关阅读:
    什么叫持久化? 为什么持久化?(转)
    SharePoint 是什么?
    大年三十整理的asp.net资料!(不得不收藏)(不得不转)
    Rational Rose和UML可视化建模基础
    asp.net中的global.asax以及web应用的生命周期
    .Net线程问题解答(转)
    什么是OOA/OOD
    C#2.0经典读书笔记 (转)
    GOF设计模式
    UltraEdit
  • 原文地址:https://www.cnblogs.com/wenbinjiang/p/11526428.html
Copyright © 2020-2023  润新知