git status
显示类似
git status
# On branch icc-server-send-metric-values
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: java/com/me/cards/preview/preview-card.js
我想检查文件,但无需重新输入或复制粘贴文件。最接近的命令是add -i
,但这只关心索引,而不是检出。这里有什么好的工作流程?
答案 0 :(得分:2)
使用tab-completion,几乎每个shell都提供。有很多文章可以帮助您进行设置,包括Bash的this one。
至于纯Git解决方案:
如果这是唯一的修改,请使用git checkout .
放弃所有更改。
如果您想保留一些更改并丢弃其他更改,请使用git checkout -p
以交互方式放弃工作目录中的更改。当Git提示您更改该文件时,请使用a
:
a - 丢弃这个大块以及文件中所有后来的帅哥
答案 1 :(得分:1)
有一个&#34;插件&#34;对于Git来说,这非常适合这个用例。
它被称为git number
,可让您通过数字引用已更改的文件。
&#34;插件&#34;添加git number
命令,该命令 - 没有任何其他参数 - 相当于git status
但具有前导数字。
$ git number
On branch master
Untracked files:
(use "git add <file>..." to include in what will be committed)
1 a/b/c/d/e/f/g/test2
nothing added to commit but untracked files present (use "git add" to track)
如果您愿意git status -s
(就像我一样),git number
让您了解。
$ git number -s
1 ?? a/b/c/d/e/f/g/test2
之后,您可以通过使用number
预先添加每个命令来引用文件的编号。 git add
可能如下所示:
$ git number add 1
git add a/b/c/d/e/f/g/test2
git number
回显已执行的命令,以确保您使用了正确的数字。 git add
只是一个示例,您可以使用任何命令并将其添加到number
前。
此外,它支持范围;如果你想要添加文件5-10,你可以使用git number add 5-10
和git number
来理解你。
对于任何进一步的问题,我建议您只需查看github repository。