`

git 简介

 
阅读更多

本文整理自: http://web.mit.edu/~mkgray/project/silk/root/afs/sipb/project/git/git-doc/git-push.html


在git中,我们可以通过git push本地仓库的更新推到服务器仓库。
$ git push ssh://git@dev.lemote.com/rt4ls.git master // 把本地仓库提交到远程仓库的master分支中
$ git remote add origin ssh://git@dev.lemote.com/rt4ls.git
$ git push origin master 


这 两个操作是等价的,第二个操作的第一行的意思是添加一个标记,让origin指向ssh://git@dev.lemote.com /rt4ls.git,也就是说你操 作origin的时候,实际上就是在操作ssh://git@dev.lemote.com/rt4ls.git。origin在这里完全可以理解为后者 的别名。
 需要说明的是,默认情况下这条语句等价于提交本地的master仓库到远程仓库,并作为远程的master分支。
 如果想把本地的某个分支test提交到远程仓库,并作为远程仓库的master分支,或者作为另外一个名叫test的分支,那么可以这么做。


$ git push origin test:master         // 提交本地test分支作为远程的master分支
$ git push origin test:test    
          // 提交本地test分支作为远程的test分支
如果想删除远程的分支呢?类似于上面,如果:左边的分支为空,那么将删除:右边的远程的分支。
$ git push origin :test              // 刚提交到远程的test将被删除,但是本地还会保存的,不用担心
更多的内容请参考《git追踪分支
 

常见错误:

1.error:failed to push some refs to ...

当要push代码到git时,出现提示:

error:failed to push some refs to ...

Dealing with “non-fast-forward” errors

From time to time you may encounter this error while pushing:

$ git push origin master 

To ../remote/ 

 ! [rejected]        master -> master (non-fast forward) 

error: failed to push some refs to '../remote/' 

To prevent you from losing history, non-fast-forward updates were rejected

Merge the remote changes before pushing again.  See the 'non-fast forward'

section of 'git push --help' for details.

 

问题(Non-fast-forward)的出现原因在于:git仓库中已经有一部分代码,所以它不允许你直接把你的代码覆盖上去。于是你有2个选择方式:

 

强推,即利用强覆盖方式用你本地的代码替代git仓库内的内容

git push -f

 

2. 先把git的东西fetch到你本地然后merge后再push

$ git fetch

$ git merge

2句命令等价于

$ git pull 

可是,这时候又出现了如下的问题:

上面出现的 [branch "master"]是需要明确(.git/config)如下的内容

[branch "master"]

    remote = origin

    merge = refs/heads/master

这等于告诉git2件事:

1,当你处于master branch, 默认的remote就是origin

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

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

$ git config branch.master.remote origin 

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

之后再重新git pull下。最后git push你的代码吧。

分享到:
评论

相关推荐

    git简介及基本操作

    git简介及基本操作git简介及基本操作git简介及基本操作git简介及基本操作git简介及基本操作

    git知识,git简介介绍,如何使用

    git知识,git简介介绍,如何使用

    Git简介和环境搭建【Git和GitHub教程1】

    Git简介和环境搭建【Git和GitHub教程1】

    Git简介以及与SVN的区别1

    Git简介以及与SVN的区别Git是由著名Linux内核(Kernel)开发者LinusTorvalds为了便利维护Linux而开发的。Git是一个分布式的版本

    git简介

    Git&GitHub_Git简史.avi

    【熟悉】git简介以及使用

    Git是什么? Git是目前世界上最先进的分布式版本控制系统(没有之一)。 Git有什么特点?简单来说就是:高端大气上档次! 哪些GIT网站? https://github.com/ 全球最大的开源项目网站。 https://gitee.com/ 中国...

    GIT相关书籍下载 Git+使用教程 Git权威指南 01链接

    压缩包包含以下几个pdf文件 由于大小有限制,需下载02链接,搜索方式 GIT相关书籍下载 Git+使用教程 Git权威指南 ...git简介.pdf pro_git_中文版本.pdf TortoiseGit日常使用指南.pdf 分布式版本控制系统-Git详解.pdf

    项目管理工具学习Git简介

    项目管理工具学习,新接触git的福音

    GIT相关书籍下载 Git+使用教程 Git权威指南 02链接

    压缩包包含以下几个pdf文件 由于大小有限制,需下载01链接,搜索方式 GIT相关书籍下载 Git+使用教程 Git权威指南 ...git简介.pdf pro_git_中文版本.pdf TortoiseGit日常使用指南.pdf 分布式版本控制系统-Git详解.pdf

    git-intro:希腊文Git简介

    希腊语Git简介 TL; DR 我们一开始就运行一次: git clone https://github.com/username/repository.git cd repository git remote add upstream https://github.com/maellak/repository.git 每次进行更改时应...

    Git教程By廖雪峰 高清完整 完整目录PDF版.pdf

    Git简介 Git是什么? Git是⺫⽬目前世界上最先进的分布式版本控制系统(没有之⼀一)。 Git有什么特点?简单来说就是:⾼高端⼤大⽓气上档次! 那什么是版本控制系统? 如果你⽤用Microsoft Word写过⻓长篇⼤大论,...

    Git简介以及常用操作.md

    适用初学者

    git简介_动力节点Java学院整理

    主要介绍了git简介_动力节点Java学院整理,Git是目前世界上最先进的分布式版本控制系统,有兴趣的可以了解一下

    微信小程序开发-Git简介.pptx

    微信小程序开发

    程序员为什么还要刷题-workshops-git-intro:Git简介!

    简介 什么是 Git,为什么要使用它? Git 是一个版本控制系统。 它可以帮助您组织项目,使您能够: 将您的工作分解成可管理的部分 修改与其他几个人相同的文件 尝试多种方法而无需进行备份 可靠地撤消不起作用的更改 ...

    GIT相关书籍下载 Git+使用教程 Git权威指南

    压缩包包含以下几个pdf文件 由于大小有限制,需下载02链接 Git+使用教程.pdf git.part1.rar ...git简介.pdf pro_git_中文版本.pdf TortoiseGit日常使用指南.pdf 分布式版本控制系统-Git详解.pdf

    Git培训文档.pptx

    本文档在于对开始使用git的同学对Git有个简单的了解,以及针对公司培训员工提供ppt。 内容包括Git简介,版本控制工具对比,简单的Git命令以及常用IDE下Git的安装配置。

    SVN和GIT视频教程2019(百度云).txt

    视频目录: 01_创建虚拟机、02_为什么要使用版本控制、03_单用户的SVN代码管理、04_仓库的备份和还原、05_多用户共同管理代码的冲突、...svn下载开源项目源码、12_git简介&本机提交、13_git公共服务器、14_相遇的纪念

    Git安装与使用方法入门

    Git简介 Git是一个帮助开发者追踪代码变化和团队协作的工具。它记录了代码修改的历史,并允许回到过去的版本。开发者可以创建分支来独立开发新功能,而不影响主代码。团队成员可以共享代码,并轻松合并修改。Git提供...

Global site tag (gtag.js) - Google Analytics