Git版本控制原理和常用指令说明

平时在Android Studio开发Android项目,习惯了点击右键或图标直接拉新fetch,pull,commit和push。但是必要的时候还得在终端输入命令行。比如正在开发新版本v3.0,老板说上个版本的某个地方操作容易误导客户,需要及时改回来发版。这时就需要创建新的分支2.1,回退到上个稳定版本2.0稳定版本tag进行修改,同时正在开发的版本也需要修改,那么可以通过git cherry -pick <commit id>来进行同步修改。

上了一定年纪,记性不太好(虽然刚毕业一年)。每次只记个大概,实践输入提示:git: ‘XXX‘ is not a git command. See ‘git --help‘ 时,就很懵逼,有点怀疑人生,不得已又开始找度娘。

好了,悠哉够了,就认真记git版本控制的原理和常用指令说明。下次怀疑人生的时候就不要再请教度娘了,自己动手,丰衣足食。

1.GIT版本控制优势介绍

  1. Git是采用分布式架构。每一个开发人员的电脑上都有一个Local Repository,所以即使没有网络也一样可以Commit,查看历史版本记录,创建项 目分支等操作,等网络再次连接上Push到Server端。SVN有一个中央服务器,属于集中式。
  2. Git把内容按元数据方式存储,而SVN是按文件:因为.git目录是处于你的机器上的一个克隆版的版本库,它拥有中心版本库上所有的东西,例如标签,分支,版本记录等。.git目录的体积大小跟.svn比较,你会发现它们差距很大。
  3. Git下载下来后,在OffLine状态下可以看到所有的Log,SVN不可以。
  4. 版本库(repository):SVN只能有一个指定中央版本库。当这个中央版本库有问题时,所有工作成员都一起瘫痪直到版本库维修完毕或者新的版本库设立完成。而 Git可以有无限个版本库。或者,更正确的说法,每一个Git都是一个版本库,区别是它们是否拥有活跃目录(Git Working Tree)。
  5. 回退版本方便。

2.GIT常用操作指令说明

GIT常用操作指令说明
指令名称 指令说明
git init  初始化创建本地仓库
git add filename 添加某个文件
git add   添加所有修改的文件
git commit -m “提交说明”   提交当前暂存区的文件
 git merge dev  合并分支
 git checkout -b dev  新建一个dev分支
 git branch -D dev  删除dev分支
 git branch  查看本地分支
 git branch -r  查看远程分支
git push origin --delete dev 删除远程分支
git status 查看当前修改状态
git stash
分支切换前不想带到别的分支,又不想提交脏数据的时候使用

(亲测,亲测偶尔不灵,丢失了好几次TAT,建议最好还是提交了再切换分支)

git tag -a v1.0 -m “version 1.0” 创建了本地一个版本 v1.0 ,并且添加了附注信息 ‘version 1.0‘
git tag 查看标签
git show v1.0 查看某个版本的附注
git push origin --tags tag远程推送
git tag -d v1.0 删除本地标签
git push origin:refs/tags/v1.0 推送的空的同名版本到线上,达到删除线上版本的目标
 git cherry-pick <commit id>  可以选择某一个分支中的一个或几个commit(s)来进行操作

补充说明:git cherry-pick <commit id>

git cherry-pick可以选择某一个分支中的一个或几个commit(s)来进行操作。例如,假设我们有个稳定版本的分支,叫v2.0,另外还有个开发版本的分支v3.0,我们不能直接把两个分支合并,这样会导致稳定版本混乱,但是又想增加一个v3.0中的功能到v2.0中,这里就可以使用cherry-pick了。

原文地址:https://www.cnblogs.com/denluoyia/p/9288854.html

时间: 2024-10-10 05:27:40

Git版本控制原理和常用指令说明的相关文章

Git版本控制原理了解

版本控制的历史 集中式VS分布式 1)集中式版本控制系统 版本库是集中存放在中央服务器的,先从中央服务器取得最新的版本,更新后把版本推送给中央服务器.集中式版本控制系统最大的弊端就是必须联网才能工作,如果在局域网内还好,速度够快,可如果在互联网上,遇到网速慢的话,可能提交个10M的文件就需要5分钟. 2)分布式版本控制系统 根本没有“中央服务器”,每个的电脑上都是一个完整的版本库,这样,你工作的时候,就不需要联网了,因为版本库就在你自己的电脑上.多个人协作时,比如说你在自己电脑上改了文件A,你的

git/github常用指令、入门

git的基本常用指令: 1.cd:切换路径 2.mkdir:进入文件夹目录 3.pwd:显示当前目录的路径 4.git init:把当前的目录变成可以管理的git仓库,生成隐藏.git文件 5.git add 文件名:把文件添加到暂存区去 6.git commit –m "版本提交备注":提交文件 –m 后面的是注释 7.git commit -a -m "版本提交备注":此指令是5.6两个步骤的合并版,添加所有更新过的文件并提交 8.git status:查看仓库

git常用指令整理及说明(详细)

git常用指令整理及说明(详细) git常用指令整理及说明详细 安装和配置 工作区版本库和暂存区 本地库和远程库 新建仓库 从远程库克隆 常用查看指令 常用修改指令 撤销修改和版本回退 分支管理 创建和合并分支 解决冲突 bug分支 远程分支 优秀教程笔记 本文是git系列博客的第二篇.本文对指令按照使用场景(建库,查看,修改,分支)进行分类归纳,介绍指令基本含义和用法,方便查阅. 安装和配置 参考我前面的博客:git在各操作系统平台下的安装和配置 工作区.版本库和暂存区 工作区:就是你在电脑里

源代码管理——git(分布式版本控制和集中式版本控制对比,git和SVN对比,git常用指令,搭建GitHub远程仓库,搭建oschina远程仓库 )

一.git简介 什么是git? git是一款开源的分布式版本控制工具 在世界上所有的分布式版本控制工具中,git是最快.最简单.最流行的 git的起源 作者是Linux之父:Linus Benedict Torvalds 当初开发git仅仅是为了辅助Linux内核的开发(管理源代码) git的现状 在国外已经非常普及,国内并未普及(在慢慢普及) 越来越多的开源项目已经转移到git CVS 最早的开源.免费的集中式版本控制工具 自身设计有问题,会造成提交文件不完整,版本库莫名其妙损坏的情况 SVN

【常用指令】git+服务器+数据库

git日程操作 服务器常用操作 ①同步master git pull origin master ②创建分支 git checkout -b 分支名 ③常规操作 git diff git add 文件名 git commit -m "版本说明" ④push操作 git push -u origin 分支名 ⑤发起merge请求 服务器 常用指令 ①看日志 tailf ".../.../localhost.log" ②看catalina.out tailf "

git之常用指令

1.git  //linux上检测是否安装git 2.sudo apt-get install git //linux上安装git 3.git config --global user.name "Your Name"  //设置用户名   git config --global user.email "[email protected]" //设置邮箱信息 4.git init //进入git仓库目录执行此指令,用于初始化git仓库,执行后会新增.git隐藏文件(

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

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

Git常用指令总结

git 已经成为日常开发流不可或缺的一部分,甚至说是核心部分,但有些不常用指令时常会忘记,再次坐下备忘,省的用到的时候再去找了.用到的时候才会记录,指令是不断增加的,请不要见怪 ~>~ git 常用指令总结 command 说明 备注 git pull 从远程拉去代码到本地,并自动合并 merge Text git push git fetch 从远程拉取代码到本地,不自动合并 可能会有缓存问题 git fetch -p 从远程拉取代码到本地,不自动合并 可以解决缓存问题 git branch

git常用指令整理

整理自廖雪峰的git教程 创建空目录: $ mkdir learngit 把目录变成仓库 $ git init 把文件添加到仓库 $ git add readme.txt 把文件提交到仓库 $ git commit -m "wrote a readme file" 查看历史记录 $ git log git版本回退,在Git中,用HEAD表示当前版本,上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100.用re