Git重置来自非暂存文件的更改

时间:2013-11-25 17:34:46

标签: git

我是git的新手,我想知道是否可以重置为已更改为未停止的文件?例如。

  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
  7. 我的回购状态现在看起来像这样:

    1. 在回购中,我收到了内容为1
    2. 的文件
    3. 在舞台上,我收到了内容为2
    4. 的文件
    5. 在工作目录中,我收到了内容为3
    6. 的文件

      如何将文件重置为第2点(重置命令echo 3 > file2.txt所做的更改)

5 个答案:

答案 0 :(得分:2)

使用

git clean -n

检查将删除哪些文件然后

git clean -f

删除未跟踪的文件

答案 1 :(得分:1)

根据git给你的笔记,你会做:

git reset HEAD file1.txt

这会将file1.txt移出已跟踪的未跟踪文件。

答案 2 :(得分:1)

通过

git checkout file2.txt

将重置您对非暂存文件的更改

答案 3 :(得分:1)

如果你想取消暂存file1.txt:

git reset file1.txt

如果你想取消所有东西(在这种情况下是相同的):

git reset

答案 4 :(得分:1)

问题解决了。我需要使用git checkout -- file1.txt。我没有看到git help(使用“git checkout - ...”来丢弃工作目录中的更改),因为主要是我的文件还没有回购。在我向repo git添加文件后,显示了这个提示。