我使用命令错误地将文件添加到 Git :
git add myfile.txt
我还没跑呢git commit
。我如何撤销这些修改,使这些修改不包含在承诺中?
我使用命令错误地将文件添加到 Git :
git add myfile.txt
我还没跑呢git commit
。我如何撤销这些修改,使这些修改不包含在承诺中?
当前回答
使用*
命令一次处理多个文件 :
git reset HEAD *.prj
git reset HEAD *.bmp
git reset HEAD *gdb*
等
其他回答
键入 :
git status
Git会告诉你什么是舞台,等等, 包括关于如何解除舞台的指示:
use "git reset HEAD <file>..." to unstage
我发现吉特做的相当不错 裸体我做正确的事情 在这样的情况下。
注:最近Git版本(1.8.4.x)更改了此电文:
(use "git rm --cached <file>..." to unstage)
git add -A
用于将所有文件添加到您的承诺( 阶段) 。
git reset
是“ git 添加 - A” 命令的对面。它会删除所有要执行的分阶段文件( 手段已准备就绪 ) 。
同样,为了添加一个用于承诺的具体文件,我们使用git add <filename>
相同的方式, to unstage( 或重置) 一个我们添加的具体文件git add
我们使用git reset <filename>
.
git 重置与 git 添加完全相反 。
为了澄清:git add
将当前工作目录的更改移动到中转区(索引)。
此进程被称为此进程中 中 中。因此,最自然的命令阶段更改(已修改的文件)是显而易见的:
git stage
git add
是一个简单到类型化的别名git stage
可惜没有git unstage
英git unadd
命令。相关命令更难猜或记,但很明显:
git reset HEAD --
我们可以很容易地为此创建别名:
git config --global alias.unadd 'reset HEAD --'
git config --global alias.unstage 'reset HEAD --'
最后,我们有了新的命令:
git add file1
git stage file2
git unadd file2
git unstage file1
我个人甚至使用更短的化名:
git a # For staging
git u # For unstaging
只是类型git reset
它将复返,犹如你从未打过字一样。git add .
自从你最后一次承诺之后,你一定要保证你以前的承诺。