Git教程(6)常用技巧之远程分支简单示例
1.基础
1.1 "master" 与"origin"
“master” 是当你运行 git init 时默认的起始分支名字,原因仅仅是它的广泛使用,“origin” 是当你运行 git clone 时默认的远程仓库名字。
远程分支以 「远程仓库名/远程分支名」 方式命名。如果你运行 git clone -o booyah 那么你默认的远程分支名字将会是 booyah/master。
注意:本地仓库名(本地根目录名),远程仓库名(服务器上的仓库名),本地默认分支名(master),远程默认分支名(origin/master)。
1.2 要了解的几个命令
查看在本地仓库中已经配置的远程仓库引用,注意是已经,且是仓库的引用,且是分支。一个仓库可含本地仓库实体和远程仓库的引用。
$ git remote -v
查看本地仓库中的分支
$ git branch -v
查看所有分支(本地,远程),*开头代表当前分支。
$ git branch -a
查看所有跟踪分支情况,如本地的分支正在跟踪远程分支,以及它领先或落后多少
$ git branch -vv
获得远程引用的完整列表(包括分支,标签)
$ git ls-remote
2.示例
注意 : 下面的 第1-第3 步 可以用git clone一步完成,如用clone请跳过。
本例子是远程仓库中有多个分支,然后在本地跟踪远程分支,修改远程分支。很多时候远程仓库只有一个分支,工作时只在本地创建本地分支,然后把它合并到本地master,再把它推送到远程。
2.1 创建仓库
在一个空目录中初始化一个空仓库,里面没有数据。
$ git init
2.2 在本地仓库中添加一个(可多个)远程仓库
$ git remote add origin https://github.com/paulboone/ticgit
2.3 得到新加的远程仓库的数据
$ git fetch origin
必须注意 git fetch命令会将数据拉取到你的本地仓库 - 它并不会自动合并或修改你当前的工作。
2.4 切换并跟踪远程的一个分支
切换到远程分支并跟踪它,注意远程分支名:「远程仓库名/远程分支名」
$ git checkout --track origin/branchA
这比只checkout好,--track表示跟踪,这样在push时会把数据更新到服务器。当克隆一个仓库时,本地 master 自动跟踪远程的。
假如并不是切换并跟踪远程分支而是在本地新建个分支x,想让它跟踪远程分支,切换到该分支后,修改正在跟踪的上游分支,如执行下面命令:那么x跟踪远程的branchA。
$ git branch -u origin/branchA
2.5 在远程分支内工作
...
2.6 更新分支到远程仓库
如果是本地新建的分支,下面命令把分支上传到远程仓库
$ git push origin branchC
如果在本地直接跟踪远程分支,那么就可以直接git push
2.7 删除无用远程分支
$ git push origin --delete ttt
Git教程(6)常用技巧之远程分支简单示例的更多相关文章
- Git教程(5)常用技巧之本地分支
http://git-scm.com/book/zh/v2/Git-%E5%88%86%E6%94%AF-%E5%88%86%E6%94%AF%E7%AE%80%E4%BB%8B 基础 Git 研发组 ...
- Git如何强制拉取一个远程分支到本地分支(转载)
有时候,我们在使用git pull指令想把一个远程分支拉取到本地分支的时候,老是会拉取失败,这一般是因为某种原因,本地分支和远程分支的内容差异无法被git成功识别出来,所以git pull指令什么都不 ...
- IDEA操作git的一些常用技巧
转自:https://blog.csdn.net/ck4438707/article/details/53455962 Git原理以后会分章节介绍,本次主要说一下intellij怎样操作git.int ...
- git之remote branch controller(远程分支控制)
1.创建本地分支 git branch //查看远程分支 git checkout -b branch_name //创建远程分支 在查看分支git branch 2.将分支提交到远程仓库 此时远程 ...
- git 教程(10)--添加远程库
现在的情景是,你已经在本地创建了一个Git仓库后,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作,真是一举 ...
- git 无法拉取新的远程分支
我们常常会根据远程分支创建本地分支,命令如下 git checkout -b dev origin/dev 上面的命令我是想把远程分支 dev 拉到本地来,但是有时候没有用,提示远程分支不存在,我们需 ...
- git 问题整理 fetch -p 修剪远程分支
修剪远程分支 问题描述 前提:假设现在远程有三个分支master.testA.testB 问题:使用命令 git fetch origin 获取到远程分支,然后使用命令 git branch -r 来 ...
- Git教程(4)常用小技巧之标签
Git 使用两种主要类型的标签:轻量标签(lightweight)与附注标签(annotated). 一个轻量标签很像一个不会改变的分支 - 它只是一个特定提交的引用. 然而,附注标签是存储在 Git ...
- [git] git代理及常用命令,远程桌面代理
1.代理 公司只能内网,上外网只能用代理,坑货! 2. 更新代码命令 1)下载代码:git clone ------------ 2) 指定目录: cd 文件名 3)git add ...
随机推荐
- 《APUE》第6章练习1
问题:编写一个程序,它调用uname并输出utsname结构中的所有字段,并将输出与uname(1)命令的输出结构做比较. 我本来以为utsname结构也跟passwd结构一样,也有那三个函数来获取整 ...
- DTCMS会员中心快速更改样式思路
非常简便 制作一个public.css文件,包含网站头部和底部的样式代码 每个会员中心模版导入这个文件就可以 把原先style.css的头部和底部样式代码删除
- 【Delphi】无标题移动窗体
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Inte ...
- 转 IHttpModule不起作用
在 Visual Studio 中,测试 IHttpModule(httpModules) 正常,但是放到服务器上去就不起作用了,这多半得多服务器 IIS 配置入手. 一.看“应用程序池”的“托管管道 ...
- NSTImer重复执行任务
问题 应用需要调度代码以在特定的时间执行.此外,你还想要重复执行任务. 解决方案 使用NSTimer调度代码以在特定的时间执行.为了使用NSTimer,你需要有日期对象与指向应用的运行循环的引用. 注 ...
- ASP.NET中POST数据并跳转页面
需求:先Post提交数据,然后跳转到目标页面 找了好久才发现这个神奇的类HttpHelper.原理很简单,利用html的from表单拼接,然后执行 使用方法: NameValueCollection ...
- JS 生成GUID
js 代码: function GUID() { this.date = new Date(); /* 判断是否初始化过,如果初始化过以下代码,则以下代码将不再执行,实际中只执行一次 */ if (t ...
- 【BZOJ 1798】 [Ahoi2009]Seq 维护序列seq
Description 老师交给小可可一个维护数列的任务,现在小可可希望你来帮他完成. 有长为N的数列,不妨设为a1,a2,…,aN .有如下三种操作形式: (1)把数列中的一段数全部乘一个值; (2 ...
- ExtJs 4.2.1 点击按钮弹出表单的窗口
初学ExtJs,做项目的时候想做一个这样的效果:点击按钮弹出对话框,之前一直是使用EasyUi来做的, EasyUi里有Dialog,用起来很方便,但是现在转移到ExtJs上后,发现没有Dialog这 ...
- Contest2037 - CSU Monthly 2013 Oct (problem B :Scoop water)
http://acm.csu.edu.cn/OnlineJudge/problem.php?cid=2037&pid=1 [题解]:卡特兰数取模 h(n) = h(n-1)*(4*n-2)/( ...