git push和git commit

时间:2016-12-07 15:05:58

标签: git github command commit

我开始使用git大约1个月,但我是那种执行命令的用户,因为知道这有效,但不知道为什么会这样。所以我在互联网上做了一些研究,寻找一些答案,但其中一些我无法找到。

到目前为止,我的最佳参考资料是: try.github.iogit - the simple gide,StackOverflow中的一些帖子以及Github的帮助。

那么,我们即将提交时使用的目标之间的差异是什么?例如,刚才我已经推动了我的GitHub,我尝试使用git commit -a代替git commit -m "comments"而且它没有用。我也看到它存在git commit -am。最后两个是一回事吗?同样地,当我在互联网上搜索时,当我总是使用git push origin master时,我看到人们使用git push。这些品种有时让我感到困惑。

2 个答案:

答案 0 :(得分:0)

这一切都是为了熟悉Git及其运作方式。一旦你变得更加舒适,你就会开始使用做同样事情的快捷方式,节省你的时间。 因此,假设您创建了一个分支并编辑了一些文件。现在,您希望推送这些更改并在远程分支上查看它们。你可能会这样:

git status
git add .
git commit -m "First commit for branch"
git push

更简单的方法是将add命令与commit命令结合使用。你可以这样做:

git commit -a -m "First commit for branch"

就使用git push而言,它会将您当前的分支推送到具有相同名称的远程分支。 git push origin master会将您的主分支推送到原点。

如果您要使用git push,那么您需要确保推送正确的分支。您可以使用git branch检查您当前所在的分行。

答案 1 :(得分:0)

解决您在问题中提到的所有命令..

  • git commit -a会打开一个编辑器供您输入提交消息,-a参数会添加git跟踪但在此提交中被修改的所有文件。

  • git commit -m "This is the commit message"允许您在命令本身中编写提交消息,因此您不必在编辑器中键入它。为此,您应该已经git add file1 file2 ..要提交其更改的文件。

  • git commit -am只是写git commit -a -m的一种奇特方式,正如您应该从上面的点中学到的那样.. -a参数/选项会添加文件和{{ 1}}选项允许您提供内联提交消息。
  • -m - 在此git push origin master是远程,origin是要推送的分支...使用master可以为您工作,因为您设置了上游分支之前使用此命令git push,因此,每次推动时都不必告诉git。使用git push -u origin master告诉git记住当前签出分支的-uremote

此外,如果您需要更多帮助,可以使用branch页面或man,您甚至应该考虑阅读Pro Git以进一步深入了解