是否可以跳过暂存区域并(同时)将未跟踪的新文件提交到git?

是否可以跳过暂存区域并(同时)将未跟踪的新文件提交到git?,git,git-add,git-untracked,Git,Git Add,Git Untracked,是否可以在一个内置的命令行命令中跳过暂存区域并(同时)将未跟踪的新文件提交到git?如果没有,还有什么选择 为git commit命令提供-a选项会使git 在执行此操作之前自动暂存已跟踪的每个文件 提交,让您跳过git添加部分: $git commit-a-m'添加了新的基准测试' 谢谢。使用单个内置命令行命令?没有 使用两个命令: git add -A git commit 使用自定义别名: 将此添加到.gitconfig: 那你就可以了 git commituntracked 对于大

是否可以在一个内置的命令行命令中跳过暂存区域并(同时)将未跟踪的新文件提交到git?如果没有,还有什么选择

为git commit命令提供-a选项会使git 在执行此操作之前自动暂存已跟踪的每个文件 提交,让您跳过git添加部分:

$git commit-a-m'添加了新的基准测试'


谢谢。

使用单个内置命令行命令?没有

使用两个命令:

git add -A
git commit
使用自定义别名:

将此添加到.gitconfig:

那你就可以了

git commituntracked

对于大师来说,这似乎很琐碎,但对我来说是一个小小的启示(我承认)-至少我现在才第一次使用它,而且它可以工作(没有自定义别名):只需使用分号
并且它将作为一行程序工作:


git add--all;git commit-m“一些信息性提交消息”

是。至少有两种主要的方法可以做到这一点。首先,您不必使用“暂存区”,您可以拥有任意多的暂存区——设置
GIT_INDEX_FILE=/path/to/private/INDEX
,然后按照您的意愿进行操作;其次,您可以直接构建提交。这甚至不难

Git的存储库核心处理blob、tree和commit对象(这里也不太相关,还有注释和带注释的标记)。转储对象的git命令是
git cat file-p

一个斑点只是一个袋子。使用
git hash object-w
filename
向存储库添加一个,它将打印该文件中blob的~true~并将blob添加到repo。树将对象绑定到文件系统名称。使用git mktree向存储库添加一个;要查看向它提供什么,请打印一棵树,例如使用
git cat file-p HEAD^{tree}
。使用
git commit tree
将提交添加到存储库,基本上,您可以说
git commit tree-p
mom
-p
dad sometree
,设置一些环境变量,并在stdin上向其提供提交消息


这才是真正需要的;如果您想进一步深入使用树进行切片和切割,那么暂存
读取树
写入树
可能非常有用,如果这对您有吸引力的话,这是一个很好的概述。

使用下面的命令跳过暂存区域并直接从工作目录提交

git commit -a

请注意,您仍然需要添加新的未跟踪文件。

请问如何扩展该自定义别名以同时包含(“变量”)提交消息?谢谢!取决于您运行的操作系统。这个问题有一些很好的例子。抱歉,但我(至少乍一看)似乎无法将该链接上的示例串在一起并在此处应用它们,以便包含git提交消息。我可以添加
-m
来给出
git commituntracked-m“some message”
吗?是的,在别名之后添加参数,就像您的示例
git commituntracked-m“some message”
一样,将使用我建议的别名。我更喜欢使用
&
而不是
这样,如果
add
以某种方式失败,您就不会继续执行
commit
。您也可以在
commit
之后在命令行上指定文件名。@Richard这将不会提交未跟踪的文件。您将收到错误消息
与git已知的任何文件都不匹配
git commit -a