git拉取远程分支并创建本地分支
本地分支推送至远程
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拉取远程分支并创建本地分支的更多相关文章
- git拉取远程分支并创建本地分支和Git中从远程的分支获取最新的版本到本地
git拉取远程分支并创建本地分支 一.查看远程分支 使用如下Git命令查看所有远程分支: git branch -r 二.拉取远程分支并创建本地分支 方法一 使用如下命令: git checkout ...
- git拉取远程分支到本地
git拉取远程分支到本地 一.查看远程分支 -- 查看远程分支 git branch -r 二.拉取远程分支并创建本地分支 -- 采用此种方法建立的本地分支会和远程分支建立映射关系. git chec ...
- git 拉取远程分支到本地并建立关联关系
git拉取远程分支到本地 一.查看远程分支 使用如下git命令查看所有远程分支: git branch -r 二.拉取远程分支并创建本地分支 方法一 使用如下命令: git checkout ...
- git 拉取远程代码
git 拉取远程代码 || 利用vscode编辑器自带了git,可在ctrl+~打开控制台拉取代码,非常好用哦~在实际项目开发过程中,往往是已经存在远程项目了,我们定义的需求是只需要简单的操作git, ...
- git 拉取远程分支到本地
步骤: 1.新建一个空文件,文件名为hhhh 2.初始化 git init 3.自己要与origin master建立连接(下划线为远程仓库链接) git remote add origin git@ ...
- git 拉取远程指定分支 pull本地不存在的分支
默认,git项目只有一个分支,就是master,我们当然可以在本地创建多个分支,并推送到远程git管理平台上,或者将远程git管理平台上的其他分支拉取到自己电脑上. 一.查看本地已有的分支 进入到项目 ...
- git拉取远程分支
查看本地所有分支列表: git branch -a 查看远程所有分支列表: git branch -r 拉取远程分支(使用该方式会在本地新建分支x,但是不会自动切换到该本地分支x,需要手动checko ...
- Git拉取远程仓库代码并更新本地仓库
1.git pull:获取最新代码到本地,并自动合并到当前分支 //查询当前远程分支 $ git remote -v //直接拉取并合并最新代码 $ git pull origin master [示 ...
- Git拉取远程新分支
1.查看本地分支 git branch 2.查看远程分支 git branch -a 3.如果要拉取的远程分支本地没有 git fetch 4.拉取远程新分支到本地 git checkout -b ...
随机推荐
- Hadoop之mapreduce
doc Hadoop初探之Stream Hadoop Stream 用python + hadoop streaming 编写分布式程序(一) -- 原理介绍,样例程序与本地调试 用python + ...
- Echarts 设置地图大小
项目中要添加地图,默认地图太小,折腾半天终于找到解决方案. series: [ { //name: '香港18区人口密度', type: 'map', mapType: 'jiangsu', // 自 ...
- win10 安装Oracle 11g release 2
参考资料: Oracle Database 11g Release 2 安装详解 - WIN 10 系统 准备工作: 安装 Oracle 11g 之前,要确保在此操作系统上未安装过 Oracle,或者 ...
- P1031 均分纸牌
题目描述 有N堆纸牌,编号分别为 1,2,…,N1,2,…,N.每堆上有若干张,但纸牌总数必为N的倍数.可以在任一堆上取若干张纸牌,然后移动. 移牌规则为:在编号为1堆上取的纸牌,只能移到编号为2的堆 ...
- python 目录切换
#- * -coding: utf - - * - import os, sys path = "c:\\" # 查看当前工作目录 retval = os.getcwd() pri ...
- 使用Rancher的RKE部署Kubernetes要点
简要说明: RKE (Rancher Kubernetes Engine)是RancherLabs提供的一个工具,可以在裸机.虚拟机.公私有云上快速安装Kubernetes集群.整个集群的部署只需要一 ...
- OMShell常用命令及遇到的问题
仿真并画图: loadModel(Modelica); loadFile ("C:/Users/wen/Desktop/TCS.mo"); simulate(TCS.TCS,sta ...
- try catch对Spring事务的影响
一.Spring 的默认事务机制,当出现unchecked异常时候回滚,checked异常的时候不会回滚. 异常中unchecked异常包括error和runtime异常.需要try catch或向上 ...
- 给 vue项目添加ESLint
eslint配置方式有两种: 注释配置:使用js注释来直接嵌入ESLint配置信息到一个文件里 配置文件:使用一个js,JSON或者YAML文件来给整个目录和它的子目录指定配置信息.这些配置可以写在一 ...
- Qt基本布局(QLayout)
概述 Qt提供了QHBoxLayout类(水平排列布局),QVBoxLayout类(垂直排列布局),QGridLayout类(网格排列布局)等基本布局管理.它们之间的继承关系如下图 布局中常用的方法有 ...