Gerrit常見命令及最佳實踐

概述

本文記錄了筆者在使用Gerrit(一種免費、開放源代碼的代碼審查軟件)過程當中的一些微小的經驗,在這裏作個簡單的分享。html

克隆工程

git clone ssh://tusi@xx.xx.cn:29428/project-name
複製代碼

若是使用了Git代理,請將xx.xx.cn:29428換成代理後的ip:portgit

git clone ssh://tusi@ip:port/project-name
複製代碼

建立develop分支

通常咱們不會將代碼直接提交到master分支,而是會選擇在develop分支進行開發shell

git checkout -b develop origin/develop
複製代碼

添加到暫存區

修改代碼後,將所修改的代碼從工做區添加到暫存區小程序

// 添加全部文件到暫存區
git add .
// 添加某目錄或文件到暫存區
git add src
複製代碼

提交暫存區改動

將暫存區內容提交到版本庫bash

git commit -m '測試commit'
複製代碼

推送到遠程分支

git push origin HEAD:refs/for/develop
複製代碼

常見報錯

missing Change-Id in commit message footer

先執行這兩條命令,命令中的信息改爲本身的hexo

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

再次pushssh

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
複製代碼

強制與遠程分支同步

慎重操做!!!會覆蓋掉本地代碼!spa

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博客
相關文章
相關標籤/搜索