项目中常用的git操作总结

前言

git:分布式版本控制器
平常我们使用git的话,几个基本的概念还是需要掌握的:

  • 工作区:仓库文件夹除了.git目录之外的内容
  • 版本库:git目录,用于存储记录版本信息
  • 暂缓区:提交到本地库之前一个分区,git add就是提交内容到暂缓区git

使用

git服务器的搭建很麻烦,所以这次我们借助码元托管代码,做练习

  • 1、初始化仓库: 注意点:一定要选择对应语言的.gitigore。(码元上暂时没有swift的.gitignore,我们可以去github上手动拷贝一份,然后放到仓库中,这一步一定要首先完成)


    初始化仓库
  • 2、将仓库克隆到本地某个文件夹中
cd /Users/liyang/Desktop/Git_Practise(本地文件夹路径)
git clone https://git.oschina.net/liyang13145/PracticeGit.git
  • 3、我们在这个新的文件夹中创建一个新项目


    Paste_Image.png
  • 4、然后我们接下来所有的操作都和这个项目有关,我们在终端中找到这个项目的路径,并回车

  • 5、项目中一般需要导入好多三方,我们可以先进行这一步。我自己添加了一个mas三方


    使用pod.png
  • 6、使用git status,查看下当前项目的状态

  • 6-1:当有红色的部分,说明有文件还没有被添加到工作区,我们使用git add .操作,将暂缓区中文件添加到工作区,然后在git status查看下项目状态


    Paste_Image.png
Paste_Image.png
  • 7、当文件都被添加到工作区后,我们使用git commit -m 先提交到本地仓库,在git push到服务器端,然后我们去码云上查看是否提交上去了
Paste_Image.png
  • 8、然后我们就可以进行开发1.0版本了

接下来,我们要讲的就是1.0版本开发完成后打tag,然后当我们开发2.0版本的时候,突然发现1.0版本出现了重大bug,然后我们在不影响2.0开发的基础上,新创建一个分支去修复1.0版本的bug,然后合并2.0版本和1.1版本

  • 1、模拟完成1.0版本开发完成
  • 1.1 将完成的代码提交到服务器,这个我用Xcode提交的,大家用终端操作也一样
  • 1.2 先给本地库打上tag
  • 1.3 提交到服务器端
git tag -a practise1.0 -m "1.0版本开发完成" (生成一个tag,并且命名,写注释)
git push origin practise1.0 (提交给服务器)
补充:
git tag (查看服务器端所有的tag)
git tag -r (查看本地库所有的tag)
tag 和 branch 必须不能重名!!!
(我的做法是branch命名的时候一般加上fixbug)
Paste_Image.png
Paste_Image.png
  • 2、2.0开发进行到一半的时候,发现1.0的bug
Paste_Image.png
  • 3、这个时候,我们需要派一个猿去修复bug,基本步骤如下
  • 3-1、去新开一个文件夹,把所有代码克隆到这个文件夹中
  • 3-2、此时默认是当前的开发进度,我们需要回退到1.0完成的时候,通过tag定位到1.0版本,然后新创建一个分支,这样新分支中的代码就是1.0完成时候的代码了
  • 3-3、完成1.0bug的修复,我们将代码提交到服务器端;并且打上新的tag1.1,新的tag也要提交给服务器
  • 3-4、打包这个版本准备好从新上架商店
  • 3-5、将1.1版本和当前正在开发的2.0版本进行合并,合并的时候,代码冲突的解决方法要选择保留两者的代码
  • 3-6、删除我们用于改bug的分支
  • 3-7、完成修复
1、
1-1:新建文件夹cd /Users/liyang/Desktop/Git_Practise 
1-2:克隆代码git clone https..文件路径
1-3: 这个时候如果你前面有pod操作的话,需要pod update下;没有的pod操作的话,这一步跳过
2、
2-1: 查看当前tag
git tag
2-2:切换到当时1.0完成时候生成的tag
git checkout practise1.0 -m "完成1.0版本开发"
2-3:新创建分支,并且自动切换到新分支,此时代码就是我们完成1.0时候的状态(注意:后面的是分支名,一定不能喝tag重名!!!!)
git checkout -b practise1.1fixBug
3、
3-1:完成1.0修复后,从新将代码上传到服务器端
git commit -m "1.0bug修复,这是1.1版本"
git push
3-2:查看下当前的tag和branch,不要命名重复了
git tag
git branch
3-3:给当前版本新打tag
git tag -a practise1.1 -m "修复1.0bug的1.1版本"
3-4: 上传tag到服务器
git push origin practise1.1
3-5:查看下tag
git tag
4、这个版本打包下,从新上传到苹果商店
5、合并1、1版本和2、0版本:直接用Xcode操作。
5-1:先切换成主分支
git checkout master 
5-2:再pull 1.1分支,出现冲突的时候,解决方案选择的是:保留两者
5-3:更新主分支到服务器端,让其他同事们都更新下
git commit -m "1.1版本和2.0版本合并"
git push
6、删除修改bug的分支,即 practise1.1fixBug
6-1:先删除本地分支
git branch -r -d origin/practise1.1fixBug
6-2:更新到服务器端
git push origin -deleate practise1.1fixBug
6-3:检查是否真的删除了
git pull
git branch
6-4:如果此时的分支中没有practise1.1fixBug,说明我们删除成功了
6-5:操作完毕

上图

1和2.png
3-1.png
3-2到3-5.png
合并分支.png
5-2.png

删除分支就不上图了,OK完活

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,837评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,551评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,417评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,448评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,524评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,554评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,569评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,316评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,766评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,077评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,240评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,912评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,560评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,176评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,425评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,114评论 2 366
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,114评论 2 352

推荐阅读更多精彩内容

  • 1.git的安装 1.1 在Windows上安装Git msysgit是Windows版的Git,从https:/...
    落魂灬阅读 12,658评论 4 54
  • 多种多样的工作流使得在项目中实施Git时变得难以选择。这份教程提供了一个出发点,调查企业团队最常见的Git工作流。...
    JSErik阅读 4,395评论 2 8
  • 节来万户欢, 日近八方暖。 快采挂雪梅, 乐听吹徵管。
    静铃音阅读 354评论 2 3
  • 序:你可听到那歌声 民意激愤,呼声嘹亮 这是热爱自由的民族 砸断锁链得解放我愿用我的心跳 和着那战鼓声回荡 自由的...
    石壕老翁阅读 152评论 0 0
  • 迷茫,毕业也有一年多了,但我还未能从学生的身份很好的转变,没能很好的进入我工作的角色,还常常想着玩耍而且是小孩子的...
    雪残阅读 299评论 4 1