2013-11-25 38 views
1

我是新的git,我想知道是否有可能重置更改爲unstaged文件?例如。Git重置更改從unstaged文件

  1. echo 1 > file1.txt
  2. git add file1.txt
  3. git commit -m "file1 added to repo"
  4. echo 2 > file1.txt
  5. git add file1.txt
  6. echo 3 > file1.txt

我回購的國家,現在看起來是這樣的:

  1. 在回購我有與內容1
  2. 文件中的階段,我已經得到了文件的內容2
  3. 在工作目錄我有文件的內容3

如何將文件重置爲第2點(通過命令echo 3 > file2.txt進行重置更改)

+0

我不知道我明白了。你想file1.txt *不*現在被添加? – cm2

+0

現在清楚了嗎? – pepuch

+0

5,我想你的意思是'git add file2.txt'? – cm2

回答

1

問題解決了。我需要使用git checkout -- file1.txt。我沒有看到git help(使用「git checkout - ...」放棄工作目錄中的更改),因爲主要是我的文件尚未回購。在我添加文件回購git顯示mi提示。

1

根據git給出的註釋,您應該這樣做:

git reset HEAD file1.txt

這將移動file1.txt出追蹤到未跟蹤文件。

1

這樣做

git checkout file2.txt 

將重置更改爲未分級的文件

1

使用

git clean -n 

檢查什麼文件將被刪除,然後

git clean -f 

刪除untr ACKED文件

1

如果你想FILE1.TXT unstage:

git reset file1.txt 

如果你想unstage一切(這是同在這種情況下):

git reset