git push origin master和git push的区别

发布于:2021-10-26 15:30:15

目录


1、git push origin master?指定远程仓库名和分支名。


2、git push 不指定远程仓库名和分支名。


3. 这两者的区别:git push是git push origin master的一种简写形式


4. 建议使用 git push origin master



提交本地仓库到远程仓库的命令一般有下面这两种方法:


1、git push origin master?指定远程仓库名和分支名。

Form github:


Use?git push?to push commits made on your local branch to a remote repository.


The?git push?command takes two arguments:


A remote name, for example,?originA branch name, for example,?master

For example:


git push

As an example, you usually run $?git push origin master?to push your local changes to your online repository.



?


2、git push 指定远程仓库名和分支名。

这个命令看起来好像比上面那个简单,但是却是“很模糊”的,很容易混淆!


不特定指出“远程仓库名和分支名”,一般是使用默认配置,配置文件(.git/config)相关内容为:


[branch "master"]
????remote = origin
????merge = refs/heads/master

这等于告诉git 2件事:
1,当你处于master branch, 默认的remote就是origin。


2,当你在master branch上使用 git pull 时,没有指定remote和branch,那么git就会采用默认的remote(也就是origin)来merge在master branch上所有的改变。


如果不想或者不会编辑config文件的话,可以在bush上输入如下命令行:


$ git config branch.master.remote origin
$ git config branch.master.merge refs/heads/master


3. 这两者的区别:git push是git push origin master的一种简写形式

(1)当只关联一个远程,只有一个分支时,这两个命令没什么区别。


(2)当你关联了两个多个仓库、有多个分支时,git push可能会报错,因为它不知道要上传代码到哪里去;


而git push origin master指定仓库和分支,就不会报错。


# 比如关联两个仓库: github 和码云

git remote add origin github-url

git remote add gitee gitee-url

# 分支有两个:master ,test-branch

可能遇到的错误(注当前分支为test-branch):新分支还没有关联远程仓库的故障


$ git push
fatal: The current branch test-branch has no upstream branch.
To push the current branch and set the remote as upstream, use

? ? git push --set-upstream origin test-branch

?


如果本地分支都有关联远程仓库,而且有两个远程仓库,那么如果使用git push ,默认是使用你最*使用的那个远程仓库。


?


4. 建议使用 git push origin master

如果你想偷懒使用git pull,那么你就要保证你的绑定的远程仓库只有一个,并且只有一个分支。


# 查看远程仓库的数量(简单信息)
git remote -v

# 查看某个远程仓库的具体信息,以origin为例:
git remote show origin

# 查看分支信息
git branch?

?

相关推荐

最新更新

猜你喜欢