是否有可能要求git diff在其diff输出中包含未跟踪的文件?或者我最好的选择是添加我创建的新文件以及我编辑和使用的现有文件
git diff --cached
Run Code Online (Sandbox Code Playgroud)
?
我有两个简明的问题:
注意: 我知道我可以进行初始提交以跟踪文件,并从那里开始跟踪我的文件.但有可能专门做我上面提到的问题吗?
我尝试使用git add -N <expr>但它跟踪文件并添加它以进行提交:
PS C:\> git add -N fileA
PS C:\> git status
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# new file: fileA
#
# 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: README.md
# modified: composer.lock …Run Code Online (Sandbox Code Playgroud) git可以提交一些文件的空版本吗?相关的例子是,我需要先添加新的(未跟踪)文件,并承诺为空文件,从而为他们的内容标记为新的,进行审查(完整的,未跟踪文件应该不会被添加到索引; git diff应该通过将文件与其提交的空版本进行比较来显示新添加的内容.
有一个git add -N file…,它file在索引file 中添加了一个空内容,但这只会说会添加,并git commit抱怨该文件尚未添加.问题是当前的非空版本不是必须添加的,而只是新文件的空版本.
有没有办法做到这一点?
PS:这个问题是在一个自动将文件添加到git存储库的程序的上下文中询问的(我的程序遵循学生编写的代码).未提交的代码是我尚未批准的代码.因此,即使我的程序刚刚在其主目录中找到一个新的非空程序,学生创建的程序启动的状态应该是空状态.这是通过在git存储库中自动提交任何新学生程序文件的新的空版本来处理的.因此,与上次提交的git修订版相比,它们编写的新代码行显示为新添加的内容.