git拉取远程分支并创建本地分支

时间:2022-09-13 10:41:06

本地分支推送至远程

git checkout local_branch
git push origin local_branch:remote_branch

  

一、查看远程分支

使用如下Git命令查看所有远程分支:

git branch -r

  

列出本地分支:

git branch

  

删除本地分支:

git branch -D BranchName

  

其中-D也可以是--delete,如:

git branch --delete BranchName

  

 删除本地的远程分支:

git branch -r -D origin/BranchName

  

远程删除git服务器上的分支:

git push origin -d BranchName

其中-d也可以是--delete,如:

git push origin --delete BranchName

  

二、拉取远程分支并创建本地分支

方法一

使用如下命令:

git fetch
git branch -r
git checkout -b fenzhi001 origin/fenzhi001

  

git checkout -b 本地分支名x origin/远程分支名x

使用该方式会在本地新建分支x,并自动切换到该本地分支x。

方式二

使用如下命令:

git fetch origin fenzhi001:fenzhi001
git checkout fenzhi001

  

使用该方式会在本地新建分支x,但是不会自动切换到该本地分支x,需要手动checkout

查看标签
打印所有标签
git tag 打印符合检索条件的标签
git tag -l <版本号>
如 git tag -l 1.*.* 为搜索一级版本为1的版本 查看对应标签状态
git checkout <版本号>
创建本地标签
创建轻量标签
轻量标签指向一个发行版的分支,其只是一个像某commit的引用,不存储名称时间戳及标签说明等信息。定义方法如下 git tag <版本号>-light
创建带附注标签
相对于轻量标签,附注标签是一个独立的标签对象,包含了名称时间戳以及标签备注等信息,同时指向对应的commit。定义方法如下 git tag -a <版本号> -m "<备注信息>"
同时我们也可以像特定的commit添加标签,使用该commit对应的SHA值即可 git tag -a <版本号> <SHA值> -m "<备注信息>"
比如 git tag -a 1.0.0 0c3b62d -m "Release Edition v1.0.0" 就是为SHA为0c3b62d的这次提交打了1.0发行版的tag 删除本地标签
git tag -d <版本号>
将本地标签提交到远程仓库
前面所提到的创建标签,只是将标签添加到了本地的版本管理,我们需要在创建之后将本地标签同步到远程仓库,如Github。 推送所有标签
git push origin --tags
推送指定版本的标签
git push origin <版本号>
删除远程仓库的标签
同创建本地标签一样,删除了本地标签之后也要同时删除远程仓库的标签。 新版本Git (> v1.7.0)
git push origin --delete <版本号>
新旧版本通用方法
旧版本Git并没有提供直接删除的方法,而我们可以通过将一个空标签替换现有标签来实现删除标签,即如下命令 git push origin :refs/tags/<版本号>
补充:使用Github添加标签

  

在项目中使用Submodule

使用git命令可以直接添加Submodule:

git submodule add 地址 目录名

git submodule add git@github.com:jjz/pod-library.git common

  

使用 git status命令可以看到

git status

  

On branch master

Changes to be committed:

new file:   .gitmodules

new file:   common

可以看到多了两个需要提交的文件:.gitmodules和 common

.gitmodules 内容包含Submodule的主要信息,指定reposirory,指定路径:

[submodule "pod-library"]

path = common

url = git@github.com:jjz/pod-library.git

发布子模块改动

git push --recurse-submodules=check

  

或者

git push --recurse-submodules=on-demand

  

如何使用Git删除新增的文件

解决方案
百度和实践了一波,总结有两个解决方案

1. 使用git clean删除
git clean的作用就是清除未track的文件或文件夹, 主要有以下几个用法

git clean -n
1
使用此命令将会显示将要删除的文件(注:但如果是新增的文件夹,则不会显示,包括这个文件夹下的文件也不会显示)

git clean -f <path>
1
使用此命令将会删除新增的文件,但不会删除新增的文件夹(包括这个文件下的文件)

git clean -df
1
使用些命令则会删除新增的文件和新增的文件夹

git clean -xdf
1
使用此命令则会删除新增的文件和新增的文件夹,包括被.ignore文件过滤文件或文件夹,所以这个命令最好是不要用。

2. 先将文件提交,再使用git reset --hard命令来删除
这个方案不提倡,使用麻烦,还容易误删代码。

git拉取远程分支并创建本地分支的更多相关文章

  1. git拉取远程分支并创建本地分支和Git中从远程的分支获取最新的版本到本地

    git拉取远程分支并创建本地分支 一.查看远程分支 使用如下Git命令查看所有远程分支: git branch -r 二.拉取远程分支并创建本地分支 方法一 使用如下命令: git checkout ...

  2. git拉取远程分支到本地

    git拉取远程分支到本地 一.查看远程分支 -- 查看远程分支 git branch -r 二.拉取远程分支并创建本地分支 -- 采用此种方法建立的本地分支会和远程分支建立映射关系. git chec ...

  3. git 拉取远程分支到本地并建立关联关系

    git拉取远程分支到本地   一.查看远程分支 使用如下git命令查看所有远程分支: git branch -r   二.拉取远程分支并创建本地分支 方法一 使用如下命令: git checkout ...

  4. git 拉取远程代码

    git 拉取远程代码 || 利用vscode编辑器自带了git,可在ctrl+~打开控制台拉取代码,非常好用哦~在实际项目开发过程中,往往是已经存在远程项目了,我们定义的需求是只需要简单的操作git, ...

  5. git 拉取远程分支到本地

    步骤: 1.新建一个空文件,文件名为hhhh 2.初始化 git init 3.自己要与origin master建立连接(下划线为远程仓库链接) git remote add origin git@ ...

  6. git 拉取远程指定分支 pull本地不存在的分支

    默认,git项目只有一个分支,就是master,我们当然可以在本地创建多个分支,并推送到远程git管理平台上,或者将远程git管理平台上的其他分支拉取到自己电脑上. 一.查看本地已有的分支 进入到项目 ...

  7. git拉取远程分支

    查看本地所有分支列表: git branch -a 查看远程所有分支列表: git branch -r 拉取远程分支(使用该方式会在本地新建分支x,但是不会自动切换到该本地分支x,需要手动checko ...

  8. git拉取远程分支到本地分支或者创建本地新分支

    git fetch origin branchname:branchname 可以把远程某各分支拉去到本地的branchname下,如果没有branchname,则会在本地新建branchname g ...

  9. git使用命令行拉取远程代码仓库中的分支至本地

    1.本地创建文件夹用于存放拉取的代码 2.执行git init初始化文件夹 3.与远程代码仓库建立连接 git remote add origin git@github.com.wuylin/noth ...

随机推荐

  1. MYSQL 模糊查询

    下面介绍mysql中模糊查询的四种用法: 1,%:表示任意0个或多个字符.可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示. 比如 SELECT * FROM [user] ...

  2. Jquery报错:Uncaught TypeError&colon; &lpar;&lpar;m&period;event&period;special&lbrack;e&period;origType&rsqb; &vert;&vert; &lpar;intermediate value&rpar;&rpar;&period;handle &vert;&vert; e&period;handler&rpar;&period;apply is not a function

    页面中出现了Jquery报错:Uncaught TypeError: ((m.event.special[e.origType] || (intermediate value)).handle || ...

  3. IIS的ISAPI接口简介

      ISAPI(Internet Server Application Programming Interface)作为一种可用来替代CGI的方法,是由微软和Process软件公司联合提出的Web服务 ...

  4. USACO Money Systems Dp 01背包

    一道经典的Dp..01背包 定义dp[i] 为需要构造的数字为i 的所有方法数 一开始的时候是这么想的 for(i = 1; i <= N; ++i){ for(j = 1; j <= V ...

  5. 有关android安全性的问题--代码混淆

    转自:http://www.cnblogs.com/dream-sky/archive/2012/11/15/2771648.html 在project.properties里加上   proguar ...

  6. Tomcat 参数配置相关

    Tomcat参数配置相关 by:授客 QQ:1033553122 目的: 对Tomcat配置的点滴学习总结,主要目的在于分析Tomcat与性能相关的一些参数设置,以便性能调优时选择最优配置   环境: ...

  7. Python-递归、三元表达式列表生成式等

    一.函数递归 1.什么是函数递归:函数的递归调用是函数嵌套的一种特殊形式,在调用一个函数的过程中又直接或者间接地调用该函数本身,称之为函数的递归调用 2.递归调用必须明确的两个阶段: 1.回溯:一次次 ...

  8. Java基础学习篇---------static

    一.static的使用 1.使用static定义的属性往往通过类名直接调用,它的属性(方法)不属于某一个的对象的.所以对象没有创建之前就可以对static的属性的调用,方法亦如此. 2.static ...

  9. Codeforces 1097 Alex and a TV Show

    传送门 除了操作 \(3\) 都可以 \(bitset\) 现在要维护 \[C_i=\sum_{gcd(j,k)=i}A_jB_k\] 类比 \(FWT\),只要求出 \(A'_i=\sum_{i|d ...

  10. 语法解析 rs&period;next&lpar;&rpar;

    ResultSet.next()方法将指针从当前位置下移一行.ResultSet 指针最初位于第一行之前:第一次调用 next 方法使第一行成为当前行:第二次调用使第二行成为当前行,依此类推. 如果新 ...