1

我在区分这两个 git 语句时遇到了麻烦,究竟有什么不同?还是它们完全不同?

4

3 回答 3

2

git push将 git push 到默认远程

git push origin将推送到名为的远程origin

克隆存储库时,默认远程是origin并且它自动作为默认上游。这就是为什么您可能看不到差异的原因。

虽然,如果您在本地初始化一个 repo,origin则不会自动创建,例如:

git init
git remote add origin ssh://url/to/origin
git push -u origin --all # note there is also other way to set up the upstream

请注意,默认遥控器可以命名为任何名称。origin只是一个约定。

于 2013-05-02T18:19:09.747 回答
0

这取决于您是否有多个远程位置可以推送。git push没有推送操作的任何参数,使用活动分支的默认远程。(https://www.kernel.org/pub/software/scm/git/docs/git-push.html并搜索“origin”)。

您当前的分支可以设置为跟踪远程仓库(在这种情况下git push,没有来源,将推送到该仓库),但如果没有指定任何内容,它会尝试origin.

(这就是为什么在使用 heroku 时,您通常必须使用git push heroku,而不仅仅是git push。)

于 2013-05-02T18:23:15.223 回答
0
**git push** 

将直接将提交的更改推送到您当前所在的分支。

git push origin branchname 

用于具体提及代码应该推送到哪里。在所有情况下使用它总是一个更好的选择。

关键字origin仅引用使用的名称,可以在 git 初始化的项目文件夹中的 .git/config 文件中更改。

如果将本地项目添加到远程。你可以使用

git remote add ec2 ssh://username@path_to_project../home/ubuntu/ProjectDir.git

或者

git remote add origin ssh://ubuntu@path_to_project../home/ubuntu/ProjectDir.git

相应的更改将反映在 ProjectDir/.git/config 文件中。

于 2013-05-02T18:20:08.170 回答