使用Git进行自动化分段

15

我有一个Git仓库,它出现了一些我从未见过的问题,而且无论我到哪里都找不到解决方法。我使用 git init 初始化仓库,然后用 git add * 添加所有文件,接着我开始编辑文件,但是当我尝试提交修改后的文件时,没有任何文件被暂存,所以我不得不使用 git add -A 命令将所有文件都暂存起来进行提交。有没有办法跳过 git add -A这一步骤呢?我经常在Xcode中使用Git,但在终端中从未遇到过需要手动将文件从未暂存状态转移到暂存状态。

我是否缺少Git暂存区域的某种实践方法?应该如何正确地使用它?


您可能会对以下问题的答案感兴趣:https://dev59.com/XW865IYBdhLWcg3wZdtW - Greg Hewgill
3个回答

27
你需要将你的更改添加到提交中,但是你可以使用以下方式:

你需要将你的更改添加到提交中,但只需使用以下命令:

git commit -a

将您的更改添加并提交或

git commit -am 'commit message'

这是我通常操作的方式。

手动添加更改让你可以选择不提交所有内容,这对于某些情况下非常有用,我相信你已经知道了。


1
git commit -a 只会提交更改过的文件,还是会包括未跟踪的文件?如果是前者,我该如何让它自动提交未跟踪的文件呢? - Mark Kramer
默认行为是考虑那些你不想追踪的使用情况,这似乎有点奇怪。在大多数情况下,难道你不希望追踪所有的事情吗? - Magnus Lind Oxlund

2

添加一个别名,它可以为您执行添加和提交,并开始使用该别名。如果您使用的是Windows系统,我建议您使用TortoiseGit,它可以抽象出索引。


2
在Git中,你不需要添加文件。Git会跟踪你现在为止已经添加的所有文件。只有当你添加一个远程仓库中没有的新文件时,才需要添加它。
对于被修改的文件,可以使用git commit -am "message"命令。
git commit -am "message"命令将自动提交所有更改过的文件。
提交后,你需要使用git push命令将数据推送到远程仓库。
希望这能解决你的问题!

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接