git add -N 和 git add --refresh

2017-06-24 10:15:58 +08:00
 leafForFall

最近查看 git-add 的手册,遇到下面的两个选项,有点搞不明白

 -N, --intent-to-add
           Record only the fact that the path will be added later. An entry for the path is placed in
           the index with no content. This is useful for, among other things, showing the unstaged
           content of such files with git diff and committing them with git commit -a.

--refresh
           Don't add the file(s), but only refresh their stat() information in the index.

请问这两个选项的使用场景在哪里呢

3340 次点击
所在节点    git
2 条回复
itommy
2017-06-24 10:24:06 +08:00
-N 的场景是:

- 新加了一个文件,这个文件目前没被 git 追踪的
- 一般在 git add 之前你希望 diff 看看改了什么内容
- 这个新文件在 diff 里面是不会出现的
- 如果想在 diff 里面看到的话,就先把这个文件 add -N <filename>
- 然后 diff

--refresh 还没用过
cyio
2017-06-24 11:18:41 +08:00
平进常用 -p,刚知道新增文件是 -N

交互式提交,可以有选择的提交部分内容

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/370732

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX