Git 實用操作

合併多次提交記錄

有的時候我們對於某個功能爲了實時保存自己寫的代碼,可能會有多次提交,所以等功能穩定下來,我們可能會有這種需求:將前面多餘幾次的提交記錄合併爲1個記錄。幸運的是 Git 爲我們提供了這樣的命令。

有2種做法

  • 合併部分

    • git rebase -I HEAD~n。這裏的 n 代表壓縮最後n次提交。執行這條命令後會彈出 vim 編輯窗口,這 n 次提交記錄會倒序,最上面的是最早的提交,最下面的是最新的提交。
    pick cc77998 ...
    pick 1821f6a ...
    ...
    pick 124422 ...
    

    我們需要修改第2到n行的 pick 爲 squash,這個的意思爲將最後n-1次的提交合併爲1次提交。然後我們保存退出,git 會一個個壓縮提交歷史,如果有衝突則解決衝突就好。

    • 完成之後我們將本地的修改提交到遠端。 Git push -f
  • 全部合併

    git rebase -i --root
    

    將全部的提交記錄合併爲1個

刪除項目中所有的提交記錄

之前個人在 Github 開源了一些完整的項目,但是有些人用於商業用途,所以有了這個需求,就是將項目改動一下,刪除一些重要代碼提交最新的代碼到倉庫並且讓用戶不能通過提交的歷史記錄會滾到指定的版本看到代碼。
以下爲步驟

1.Checkout

   git checkout --orphan latest_branch

2. Add all the files

   git add -A

3. Commit the changes

   git commit -am "commit message"


4. Delete the branch

   git branch -D master

5.Rename the current branch to master

   git branch -m master

6.Finally, force update your repository

   git push -f origin master

給項目打 tag

git tag -a 1.0.0 -m 'release SPM lib'
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章