Git版本管理系统常用的使用命令

分支操作

1,列出所有本地分支
git branch

2、列出所有远程分支
git branch -r

3、列出所有本地分支和远程分支
git branch -a

4、新建一个分支,但依然停留在当前分支
git branch [branch-name]

例如,创建名称为dev的分支:
git branch dev

5、新建一个分支,并切换到该分支
git checkout -b [branch]

例如,创建名称为dev的分支并切换到该分支上
git checkout -b dev

6、切换到指定分支,并更新工作区
git checkout [branch-name]

例如,切换到dev分支上
git checkout dev

7、合并指定分支到当前分支
git merge [branch]

例如,当前在master分支上,将dev分支合并到当前master分支上来
git merge dev

8、删除分支
git branch -d [branch-name]

例如,删除本地dev分支
git branch -d dev

9、将本地master分支推送到远程服务器
git push origin master

10、删除远程分支
git push origin --delete <branchName>

11,克隆指定分支到本地
git clone -b [branch分支名称] [git地址]
备注: git clone 默认是克隆master分支,可以使用-b参数指定具体的分支,实际上-b参数不仅支持分支名,还支持tag名称等
git clone -b <branch-or-tag-or-commit> [git 地址]

例如,删除远程的dev分支
git push origin --delete dev

否则,可以使用这种语法,推送一个空分支到远程分支,其实就相当于删除远程分支:
git branch -d <branchName>
git push origin :<branchName>

标签(tag)操作

1、列出所有tag,加上-l参数可以使用通配符过滤tag
git tag
例如:
git tag -l "v1.*"

2、打轻量标签
git tag [tag name]

3、附注标签
git tag -a [tag name] -m [message]

例如,打v1.0标签
git tag -a v1.0 -m ‘v1.0 release‘

4、后期打标签
git tag -a [tag name] [version]

5,给指定的commit id打标签
打tag不必要在head之上,也可以在之前的版本上,可通过git log获取之前的提交的版本commit id
git tag -a [tag标签] [commit id]
git tag -a [tag标签] [commit id] -m "your message"
例 如:
git tag -a v1.1 9cbf3d0

6、删除本地tag
git tag -d [tag]

例如,删除本地v1.0 标签
git tag -d v1.0

7、删除远程tag
git push origin --delete tag <tagname>

还有另外一种方式来删除,推送一个空tag到远程
git tag -d <tagname>
git push origin :refs/tags/<tagname>

8、 查看tag信息
git show [tag]

9、提交指定tag
git push [remote] [tag]

例如,将v1.0标签推送到远程服务器上
git push origin v1.0

10、提交所有tag
git push [remote] --tags

10,获取指定tag内容
git clone -b [tag标签] [git地址]

重命名远程分支

在git中重命名远程分支,其实就是先删除远程分支,然后重命名本地分支,再重新提交一个远程分支。

例如,把远程分支dev重命名为develop,操作如下:
1.删除远程分支:
$ git push --delete origin dev

2.重命名本地分支:
git branch -m dev develop

3.推送本地分支:
git push origin develop

版本回退

1,我们可以使用git log命令查看历史记录,并根据实际情况进行版本回退,如果嫌输出信息太多,可以加上--pretty=oneline参数
首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是最新的提交1094adb...(注意我的提交ID和你的肯定不一样),上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100
例如:回退到上一个版本,我们可以使用git reset命令
git reset --hard HEAD^
然后我们用git log再看看现在版本库的状态
git log

2,当然我们还可以根据commit id进行版本回退
git reset --hard [commit id]

小结

1,HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id。

2, 穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。

3,要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。

原文地址:https://blog.51cto.com/13718210/2419996

时间: 2024-10-12 10:02:18

Git版本管理系统常用的使用命令的相关文章

git项目实战常用workflow和命令

一个从无到有的项目大体经历-创建项目目录,创建repo,配置过滤集,配置git user,导入已有基础代码入库,将库放到central去,建立分支,修改代码,checkin代码,分支上 测试验证代码,merge稳定代码回主线,打tag,push到中央库分享 mkdir app   cd app   git init   cd .git   vi description   cd info   sudo vi exclude cd ../../ (app目录)   git add --all   

Git版本控制软件结合GitHub从入门到精通常用命令学习手册

GIT 学习手册简介 本站为 Git 学习参考手册.目的是为学习与记忆 Git 使用中最重要.最普遍的命令提供快速翻阅. 这些命令以你可能需要的操作类型划分,并且将提供日常使用中需要的一些常用的命令以及参数. 本手册将从入门到精通指导大家. 首先,我们要从如何以 Git 的思维方式管理源代码开始. 如何以 GIT 的方式思考(这里可以不用看懂,接着看下面的内容,看完就全懂了.) 懂得 Git,第一件重要的事情就是要知道它与 Subversion.Perforce 或者任何你用过的版本控制工具都有

(转) Git版本控制软件结合GitHub从入门到精通常用命令学习手册

转载自:爱分享 » Git版本控制软件结合GitHub从入门到精通常用命令学习手册 原文传送门: http://www.ihref.com/read-16369.html 注意: 学习前请先配置好Git客户端 相关文章:Git客户端图文详解如何安装配置GitHub操作流程攻略 官方中文手册:http://git-scm.com/book/zh GIT 学习手册简介 本站为 Git 学习参考手册.目的是为学习与记忆 Git 使用中最重要.最普遍的命令提供快速翻阅. 这些命令以你可能需要的操作类型划

ubuntu14.04下svn版本管理系统的安装及常用命令的使用整理

ubuntu14.04下安装svn$sudo apt-get install subversion 执行这一步就安装完成了,在ubuntu先安装很方便 安装完成后,创建版本库目录,由于是本地环境,就在某个目录下建立一个目录,如果是真实环境,就是相当于服务器上的目录,由于本地,则就模拟出一个服务器上的一个版本库 $sudo mkdir -p /opt/subverdion/svn ###创建版本库目录$sudo svnadmin create /opt/subversion/svn ###创建版本

git常用的一些命令总结

git常用的一些命令总结 git init 创建一个版本库 git add file 将文件从工作区提交到暂存区 git commit -m "blabla--" 将文件中暂存区提交到仓库 git status 查看仓库当前的状态 git diff 可以查看具体修改了哪些内容 git log 查看我们提交的历史记录 git log –pretty=oneline #输出少量版本信息和提交的内容 git reset –hard HEAD^ #返回上一个版本 cat filename #查

Git 基本原理与常用命令

平时使用过两种版本控制软件 SVN 和 Git,平心而论,如果纯粹自己使用,那么绝对 Git 更加适合,本地库.远程库.离线工作.强大而灵活的分支.大名鼎鼎的Github, 这些都是选择 Git 的原因.记得刚接触时Git,感觉 Git 如此强大,再加上其是由大名鼎鼎的 Linus 所编写,所以花了很多的时间看各种资料,不过后来那些不常用的命令与功能还是仅仅停留在知道与了解的层面.Git 只是一种工具,是为了满足某种需求而被编写出来的一种工具,对于工具做到善加利用即可.当然,要做到善加利用,一定

开发环境之git:团队协作git工作流与常用命令

此篇文章只是一篇傻瓜式的,记录工作中比较规范且常见的一个git工作流需要用到的命令,让你可以快速的开始工作.而不是一些长篇大论的理论知识,如果你有用过sourcetree或者其它图形化工具,结合你正在使用的工具,敲这些命令,看图形化工具中的变化,对比思考这些命令可能会更容易吸收. 1.基本配置 刚入职公司开始做项目拉代码,需要经历的第一件事.配置个人的用户名称和电子邮件地址(通常是公司邮件地址) 1.1 配置用户名和邮箱 git config --global user.name "你的名字&q

Git本地库常用命令集

Git本地库常用命令集 以下所有的git命令都是在测试目录/git/下进行的.mkdir /git git init : 初始化git本地库在git本地库目录下执行该命令将会初始化一个git的本地库目录,此时在该目录下将会生成一个.git文件夹,其中包含有git本地库的配置文件及项目文件 git init git config [user.name][user.email] : 设置签名设置签名主要是为了使git能够区分提交代码的人员,其中签名级别又分为: 项目级别/仓库级别 : git con

git的一些常用命令

Git和SVN是我们最常用的版本控制系(Version Control System, VCS),当然,除了这二者之外还有许多其他的VCS,例如早期的CVS等.顾名思义,版本控制系统主要就是控制.协调各个版本的文档内容的一致性,这些文档包括但不限于代码文件.图片文件等等.早期SVN占据了绝大部分市场,而后来随着Git的出现,越来越多的人选择将它作为版本控制工具,社区也越来越强大.相较于SVN,最核心的区别是Git是分布式的VCS,简而言之,每一个你pull下来的Git仓库都是主仓库的一个分布式版