Git 操作进阶使用

1.引言

最近跳槽啦,入职啦一家新的公司,5个人协同办公,共同维护一个项目。因为自己git 用的不是很熟悉,导致,自己提交之后的代码,把服务器上的代码弄乱啦。折腾了一俩天。给自己带来麻烦的同时也麻烦啦我的同事。所以今天花啦一整天学习下git的进阶使用。我是在Linux上写的这篇博客

2.正题

2.1 概念

暂存区:通过git add. 将文件提交的区域
本地区:本地git仓库保存的区域
工作区:对本地区代码进行修改,保存的区域

image.png

2.2 git 中的关联关系:

  • 本地仓库和远程仓库的关系
 git  add   remote   origin  <远程仓库的地址>      本地仓库和远程仓库建立连接 

 git remote -v    查看远程仓库的地址
  • 本地分支和远程分支的关系
   git checkout -b   <本地分支名>   origin/<远程服务器分支名称>   将远程分支拉到本地。此时远程分支和本地分支没有建立联系
   
   git branch  -u  origin/ <远程分支名字,不带origin>           本地分支和远程分支建立联系(ps: 默认是当前的本地分支)

  • 查看本地分支 和远程分支 的对应关系
   git branch -vv   

2.3 场景分析

2.31 本地commite 合并

多人本地协同办公,为了保证日志的清晰,每个人提交一次,只能有一个结点。也就是说本地有多个commite打话,必须要合并成一个commite。commite的合并 用到git rebase -i [startCommiteId]。此条指令的意思是,将startCommiteId 之后的提交合并成一个。
示例:

image.png

现在要将”本地的三次提交" 合并成一次。选择”本地第一次提交" 前的一次commitId 作为startCommiteId,也就是 commit:e21b9a743c 那次提交。

执行:git rebase -i e21b9a743c,进入如下界面


image.png

将"pick " 改成 s 就行。s是 squash的 缩写。 修改完毕:Ctrl+X 退出编辑界面,进入到 ”合并日志填写界面”

image.png

Ctrl+X 退出之后,就会提示保存成功


注意:
git rebase -i 是将最新的一次提交,压缩到"前一个提交"上,因此我们不能把 将 "前一个提交"前打"Pick" 改成 "s"。 否则会提示:

Git: 在转换时出现"没有前一个提交不能进行'squash'"

image.png

2.32 减少 冲突合并生成结点

合并是无时无刻存在的,单纯的使用 git pull 将会发生合并操作。导致本地新生成一个 "合并结点"。然后提交到服务器上,就会有这条合并记录。日志上会很难看,且容易出现混乱。(ps:我本人就是因为这样的操作,导致混乱)。正确的方式是:

git  pull  --rebase  origin  远程分支名

之后,通过  git status 查看 冲突 ,更改冲突完毕之后

git add .

git rebase --continue

这样就不会生成一个新的结点。前提啥:本地分支已经提交

2.33 分支选择性合并

当前分支为A,还有一个分支为B。现在想将B分支的一次提交,合并到A分支上。使用

git  cherry-pick   commiteId 

有提示冲突:git status 查看,并修改,之后,git  commit  -s  提交 这次的合并

以上就是我最近一天遇到的关于git使用的痛点。通过这些天的摸索,也逐渐学会啦一些其他打命令。

git  reset  + commitId   回退版本,commitId 之后的改动,会在工作区中保存

git reset --soft  +commitId   回退版本,commitId 之后的改动,会在工作区中保存

git reset --hard   +commitId  回退版本到指定版本,commitId 之后的改动就会被丢弃(  慎用)

git  branch -vv   经常需要查看当前head 是否在分支上,以及本地分支对应打远程分支

git  push  origin  HEAD:远程分支名    "HEAD" 必须完全大写。假如不指定远程分支,git push 默认是在远程服务器新建立一个  和  本地分支名称一样的,远程分支

git pull --rebase  origin   远程分支名 (不要用origin/远程分支名)


目前还有这些内容待总结:

  1. Choreographer 学习
  2. ViewGroup 自定义不执行onDraw().通过设置 setWillNotDraw(false);
  3. ArgbEvaluator 类 可以实现字体颜色/背景的渐变效果
  4. 给控件设置ele 阴影,发现没得反映 需要调用下:setOutlineProvider()
  5. focusSeach 进一步深入理解
  6. TvRecycleView的bug 。设置了拦截子view 焦点的 模式,导致子view requestFOcus 失败
  7. android tv 有些view setOnClick/setlongClick 无反应。(原因是父布局dispathEvent返回true,更加深一层的原因是 view焦点占据,所以不响应事件)
  8. Git rebase Git revert Git stash ,Git commit -s 等等操作练习

革命尚未成功,同志们还任需努力!


补充:

git stash: 将当前分支下,工作区的代码(改动的)存入栈中。方面进行git pull 操作

git stash pop: 将当前栈中改动的代码,移出并且删除,移出的意思是与当前分支进行合并。既然是合并就会产生冲突。解决冲突之后,git add . 一下 就 ok了。

git stash show : 查看是否栈中有缓存的代码

git stash clear: 删除 栈中的代码

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