Board logo

標題: 最徹底, 最完美, 最簡單的discard uncommitted changes, 應該係乜? [打印本頁]

作者: 3ldk    時間: 2017-3-9 10:03     標題: 最徹底, 最完美, 最簡單的discard uncommitted changes, 應該係乜?

我用的是這兩句
git clean -df
git reset --hard

感覺應該係最合乎題目的要求


但如果search一下, 會發覺網上其實好多版本

例如其中一個係沒有git reset --hard
淨係用依句git clean -df, 我試過發現其實都work, 句reset好似係多餘的, 但好多版本中都有reset依句

又例如有D人會用git reset

有D人會用git revert

又或者會用依個版本
git reset
git checkout .
git clean -fdx

仲有好多版本不能盡錄, 有無一個最好的版本?
同埋如果想係sourcetree ui做git clean -df



參考:
http://stackoverflow.com/questio ... t-to-previous-state

http://stackoverflow.com/questio ... e-local-git-changes
作者: Jackass_TMxCK    時間: 2017-3-9 13:59

git stash
git stash drop
作者: 3ldk    時間: 2017-3-11 02:27

git stash
git stash drop
Jackass_TMxCK 發表於 2017-3-9 13:59



依個唔係一個徹底的方法
首先佢只可以還原staged個list入面的file
unstaged果D不能還原
如果有D file連unstaged list都入唔到的話, 就更加還原唔到

我係希望用git, 可以做到同以下做法一樣咁徹底的效果
1. zip左成個project folder
2. 改亂folder入面的file, 然後delete成個project folder
3. 爆開zip當還原
作者: 梁炳    時間: 2017-3-11 14:29

是但一個方法都得啦

至於你話zip, zip可以archive埋無入git的files, 你想untracked file都還原到?
話明untracked, 又點會用git管理
作者: LoneGumMan    時間: 2017-3-11 16:41

點樣界定 "uncommitted change"? staged + unstaged?
最簡單應該係 git reset --hard <SHA1|branch|tag, 連stage 左O既野都冇埋...
作者: dsscss    時間: 2017-3-12 01:06

本帖最後由 dsscss 於 2017-3-12 01:10 編輯

係,應該係git reset --hard

若果windows,用tortoise git就唔駛點煩呢樣野,選revert就可以幫你還原uncommitted change.
若果gui方便,當然用gui. 還原呢d咁簡單都要記command又要驚打漏就太辛苦了.

via HKEPC Reader for Android





歡迎光臨 電腦領域 HKEPC Hardware (https://www.hkepc.com/forum/) Powered by Discuz! 7.2