git 远程操作 git pull git push

简介:

git pull


用法:

git pull <远程主机名> <远程分支名>:<本地分支名>



常用写法:

1. 全路径

git pull origin master:master


取回远程主机的master分支 与本地的master分支合并



2.省略本地分支

git pull origin master


取回远程主机名origin的master分支, 并与本地的当前分支合并


实质上,这等同于先做git fetch,再做git merge

git fetch origin

git merge origin/master



3. 省略远程分支名


在某些场合,Git会自动在本地分支与远程分支之间,建立一种追踪关系(tracking)。比如,在git clone的时候,所有本地分支默认与远程主机的同名分支,建立追踪关系,也就是说,本地的master分支自动"追踪"origin/master分支。

Git也允许手动建立追踪关系。


git branch --set-upstream dev origin/dev

上面命令指定dev分支追踪origin/dev分支。

如果当前分支与远程分支存在追踪关系,git pull就可以省略远程分支名。


$ git pull origin

上面命令表示,本地的当前分支自动与对应的origin主机"追踪分支"(remote-tracking branch)进行合并。



4. 省略主机名

如果当前分支只有一个追踪分支,连远程主机名都可以省略。

git pull





git push


用法:

git push <远程主机名> <本地分支名>:<远程分支名>


将<本地的分支> 推送到 <远程主机名> 的远程分支



常用写法: 


1. 省略远程分支

git push origin master


将本地的master分支推送到远程主机名origin 的master分支(如果不存在则创建)



2. 省略本地分支

git push origin :master

将本地一个空分支送到远程的maser分支,实际就是删除远程分支 等同于git push origin --delete master




3.省略本地分支和远程分支

git push origin  

如果本地分支和远程分支之间存在追踪关系,则本地分支和远程分支都可以省略

(如果报错,则可能需要建立追踪关系   git push --set-upstream origin dev)


留一下一个疑问:如何查看 这个中追踪关系呢? git remote show origin (查看远程主机的详情)



4 省略远程主机名


git push

只和一个远程主机名关联 如:origin

如果当前分支与多个主机存在追踪关系,则可以使用-u选项指定一个默认主机,这样后面就可以不加任何参数使用git push。


$ git push -u origin master

上面命令将本地的master分支推送到origin主机,同时指定origin为默认主机,后面就可以不加任何参数使用git push了。

不带任何参数的git push,默认只推送当前分支,这叫做simple方式。此外,还有一种matching方式,会推送所有有对应的远程分支的本地分支。Git 2.0版本之前,默认采用matching方法,现在改为默认采用simple方式。如果要修改这个设置,可以采用git config命令。


git config --global push.default simple

本文转自残剑博客51CTO博客,原文链接http://blog.51cto.com/cuidehua/1813928如需转载请自行联系原作者


cuizhiliang

相关文章
|
1月前
|
开发工具 git
git push 提交后撤回--图文详解
git push 提交后撤回--图文详解
16 1
|
2月前
|
开发工具 git
记IDEA Git版本回退并push到远程操作
记IDEA Git版本回退并push到远程操作
31 1
记IDEA Git版本回退并push到远程操作
|
2月前
|
开发工具 git 开发者
|
2月前
|
开发工具 git 开发者
Git Pull vs. Git Fetch:深度解析
【2月更文挑战第29天】
206 0
Git Pull vs. Git Fetch:深度解析
|
2月前
|
开发工具 git
web后端-IDEA的Git操作
web后端-IDEA的Git操作
|
2月前
|
开发工具 git
|
2月前
|
开发工具 git
Git -- 代码上传错误 error: failed to push some refs to ‘git@gitee.com:JMFive/uni-shop2.git‘
Git -- 代码上传错误 error: failed to push some refs to ‘git@gitee.com:JMFive/uni-shop2.git‘
|
12天前
|
开发工具 git 开发者
【专栏】探讨了 Git 中的 `git rebase` 操作,它用于重新应用提交到另一分支,改变历史顺序
【4月更文挑战第29天】本文探讨了 Git 中的 `git rebase` 操作,它用于重新应用提交到另一分支,改变历史顺序。与 `git merge` 不同,rebase 重写提交历史,提供简洁线性的历史记录。文章介绍了 rebase 的基本操作、应用场景,如整理提交历史、解决冲突和整合分支,并强调了使用注意事项,如避免在公共分支上操作。尽管 rebase 可以带来整洁的历史和冲突解决便利,但其潜在的风险和可能导致的历史混乱需谨慎对待。理解并恰当使用 `git rebase` 可以提升开发效率和代码质量。
|
22天前
|
开发工具 git
完美解决git 执行git push origin master指令 报错command not found
完美解决git 执行git push origin master指令 报错command not found
29 0
|
26天前
|
Linux 开发工具 git
还不会 Git 子模块操作?一文教你学会 git submodule 的增、删、改、查!
还不会 Git 子模块操作?一文教你学会 git submodule 的增、删、改、查!

相关实验场景

更多