一直使用的是IDEA來管理版本,傻瓜式操作,但實際上並不利於理解版本管理。所以之後能夠使用命令行就使用命令行。
這次遇到的問題是:idea自帶git工具不小心多次提交了配置文件,疊加了多個commit,我想刪除一些沒用的提交的遠程分支。
我大致將commit疊加分爲以下情況:
commit(存在一個或者多個)全部都刪除
方法很多,任意一個都行。
1.git reset
git reset --hard HEAD^1
//這裏的1代表HEAD指向分支的上一個版本
//同理 1是上一個 2就是上上個
2.git stach
git stach
git stach drop
commit(存在一個或者多個)需要保留代碼
比如說我更改了線上版本的配置文件,又不小心add了,那麼我需要單純刪除這個git commit 重新commit。
git reset
git reset --soft HEAD^1 #這樣就能夠撤銷一個或者多個commit
補充 git reset 知識:
git reset用於撤銷commit,配合幾個參數使用有不同用處:
1.–mixed
不刪除工作區代碼,撤銷commit,並且add到緩存區的文件也同樣撤銷
2.–soft
不刪除工作區代碼,撤銷commit,不撤銷add到緩存區的文件
3.–hard
刪除工作區代碼,撤銷commit,撤銷add到緩存區的文件