平時發現有很多git操作,但是有時候總忘記,這裏簡單記錄下,怕自己以後找不到了
git commit使用vim編輯
在本地git目錄中,vi .git/config,然後在[core]加上editor = vim,這樣我們在執行git commit時候,就會使用git編輯,而不是使用默認的nano編輯器,更改後config文件如下:
1 [core]
2 repositoryformatversion = 0
3 filemode = true
4 bare = false
5 logallrefupdates = true
6 editor = vim
git 查看改動指令
git log -p file 可以看到一個文件的所有改動歷史
git log --pretty=oneline file 可以看到一個文件的所有改動提交
git show 可以看到本地版本和上一版本的改動
git show commit id 可以看到這個commit id的改動
git分支操作
git branch dev 創建分支dev
git checkout dev 切換到分支dev
git checkout -b dev 在現在分支上新建立並切換分支dev,
git branch -d dev 刪除分支dev
git 改動與提交
git reset --hard origin/master commit id 丟棄所有的本地改動與提交 直接切換到某個分支的最新代碼上或者某個提交
git checkout -f 強制放棄本地所有改動
git checkout file 強制放棄某個文件的改動
git checkout dev file 可以把某個分支的文件切換到這個分支上
git patch
git format-patch -1 可以生成之前幾次提交的patch,patch名字是commit的內用,這裏輸入的-1就生成一次提交的,可以生成N次的,比較靈活
git format-patch commit id 可以生成commit id的那次改動的patch
git apply --stat newpatch.patch 先檢查patch文件
git apply --check newpatch.patch 檢查能否應用成功
git am --signoff < newpatch.patch 打補丁