git push & git pull详解

阅读数:60 评论数:0

跳转到新版页面

分类

应用软件

正文

一、git push

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

1、如果省略远程分支名,说明本地分支名与远程分支名同名。

2、如果远程分支名不存在,则会被新建。

git push origin master

表示将本地的master分支推送到origin主机的master分支,origin是一个远程git地址。

3、如果省略本地分支名,则表示删除远程分支

git push origin :master
# 等同于
git push origin --delete master

4、如果当前分支与远程分支同名,则二者都可省略

git push origin

5、如果当前分支只有一个追溯分支,那么主机名也可以省略

git push

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

$ git push -u origin master

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

$ git config --global push.default matching
# 或者
$ git config --global push.default simple

8、还有一种情况,就是不管是否存在对应的远程分支,将本地的所有分支都推送到远程主机,这时需要使用–all选项。

$ git push --all origin

9、强制推送

$ git push --force origin

10、推送标签

$ git push origin --tags

二、git pull

git pull 远程主机 远程分支:本地分支

如果你想参与github上的一些优秀的项目,下面提供一个通用的例子:

$git clone <远程Arepository> #克隆你fork出来的分支

$git remote add <远程Brepository标签> git@github.com:XXXX/ceph.git #添加远程Brepository标签

$git pull <远程B厂库标签> master:master  #从远程Brepository的master分支拉取最新objects合并到本地master分支

$git checkout YYYY #切换到要修改的分支上

$git branch develop; git checkout develop #在当前分支的基础上创建一个开发分支,并切换到该分支上,你将在该分支上coding

coding...... #在工作区coding

$git add .#将修改保存到索引区

$git commit -a #将修改提交到本地分区

$git push origin my_test:my_test #将本地分支my_test提交到远程A repository的my_test分支上

然后在github web界面上将my_test分支合并到你需改的远程B repository 分支上。等待管理员review,如果有问题,就继续在develop分支当修改,并commit –amend(追加提交),在之前的commit上修改。知道被meger。




相关推荐

&lt;scm&gt; &lt;tag&gt;v${project.version}&lt;/tag&gt;

一、安装push over ssh插件 如果插件安装慢,可以参考:http:

一、原理 当执行git commit -m "xxx",提交代码的时候,pre-commit钩子会在git键入提交信息前运行做代码风格检查,如果代码不符合相应规则,则报错,而它

一、理解示例 <p data-p

方式一、使用油猴脚本 https://greasyfork.org/zh-CN/scripts/412245-github-%E5%A2%9E%E5%BC%BA-%E9%AB%98%E9%80%9F%

一、使用tail for windows工具 tail for windows是便携式软件不需要安装 https://tail-for-windows.en.softonic.com/ 解压后将tai

gitlab是一个用于仓库管理系统的开源项目,使用git作为代码工具,基础功能免费,高级功能收费。 使用的原因大部分是想自行搭建自己的代码管理仓库,用于内部使用。

一、maven integration 添加此插件,就可以构建一个maven项目。 二、publish over ssh 添加此插件,就可以配置与远程服务器ssh连接,实现文件传输,在远程服务执行命令