为什么要添加并提交git?

时间:2019-03-13 15:02:16

标签: git git-commit git-add

我是的新手,我问我为什么必须使用'git add'和'git commit'将文件提交到存储库中。


我尝试使用所有IDE,只需单击一下即可提交文件。这意味着IDE结合了“添加”和“提交”,对吧?!

因此,我无法找到对两个命令进行编程都有意义的原因。

3 个答案:

答案 0 :(得分:0)

  

与其他基于云的/   储存库系统。 具有以下事实之一   所谓的“ staging area”。

git add

  • 中,文件在存储库中更新之前,首先将其添加到所谓的staging area中。 正是按照函数名称所建议的那样,通过 git add 命令来完成此操作。

  • 暂存阶段中,您告诉要更新哪些文件。 这也意味着,如果您改变主意,可以在登台区域中删除某些更新。


git commit

  • 一旦您生成了一个版本,认为可以将其发布到存储库中,则可以提交更改,以便您和其他人可以看到它们。

  • 再次,命名的命令源自所描述的操作,因此在这种情况下将是 git commit ,它将提交您在暂存区域中建议的更改。 (通过git add


所以区别在于,如果您使用Internet浏览器直接将文件上传到存储库中,则实际上跳过了git add阶段,而您git commit则直接执行了存储库中的文件。

现在,如果您有一个git项目,则只能自己管理,是的,git add对您基本上没有用。但是,在一个有多个人工作的大型项目中,您想要确保自己不会覆盖别人的代码,或者只是想确保自己进行正确的版本管理,正确使用舞台区域。

主要优点之一是,在提交阶段,您通常不提交单个文件,而是进行多个更改,这使得更容易跟踪谁做了什么,而不是查找每个文件。一个。

  

有关更多信息,(不仅如此) git addgit commit,我将强烈建议您学习this guide。至少就我个人而言,我仅凭此资源就能精通

答案 1 :(得分:0)

git中的索引就像一个预检区域,在这里您可以准备下一次提交的内容。

如果您使用某些IDE或始终使用-a进行提交,则您可以基本上忽略它的存在。有人做。在最简单的情况下,这可能不是一个坏选择。

但是,随着复杂性的增加,与它进行更有效的交互将变得越来越困难,这首先需要更好的理解。

更多详细信息在这里:

What does the git index contain EXACTLY?

也许在那里?

Understanding git - Index

答案 2 :(得分:0)

更改可以散布到多个文件,您可以将所有更改捆绑在一个提交中,并清楚地标明您所做的事情。

例如,在Web开发中,当您完成创建新页面时,可能已更改了多个文件。 您的提交消息可能是:Add index page 其中包含文件:

  • index.html

  • script.js

  • ...

将其推送到远程位置后,下一个拉取的人将获得一个稍微完成的索引页,而不只是一个文件。