当前位置:   article > 正文

Git Bash 提交代码的正确姿势,总结到位_gitbash提交代码

gitbash提交代码

项目经验,如需转载,请注明作者:Yuloran (t.cn/EGU6c76)

前言

本文介绍如何使用 Git Bash 命令行,提交代码、解决冲突,以及如何避免冲突。有助于理解 Android Studio 的 VCS 背后的原理。

检出代码

检出远程仓库

git clone https://github.com/Yuloran/GitTutorial.git

可以检出 origin/master 分支到本地,这是 GitHub 创建仓库时默认的 主机名/分支名。使用 git branch -vv 查看本地分支状态:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

可见,本地分支名为 master,关联的远程分支名为 origin/master(origin 是主机名,master 是分支名)。

检出远程分支

很多时候,配置管理员需要新建很多远程分支,以进行同一项目不同版本的并行开发。比如,有的分支用于需求开发,有的分支用于 Bug 修复等。此时,我们需要检出各自对应的分支,修改并提交代码。

同步远程分支

管理员新建远程分支后,我们需要先同步一下远程分支,才能看到新建的分支:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

如上图所示,先使用 git branch -a 查看本地和远程所有分支,发现并没有管理员新建的 bug_fix 分支,此时输入 git fetch,提示有一个新分支 bug_fix。再次输入 git branch -a 查看所有分支:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

嗯,确实多了一个 bug_fix 分支。

检出远程分支

git checkout -b bug_fix -t remotes/origin/bug_fix

checkout -b 表示新建本地分支,bug_fix 为本地分支名,你也可以起别的名字。-t 表示追踪远程分支(track),remotes/origin/bug_fix 为远程分支名,查看检出结果:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

输入 git branch 查看当前所在的本地分支:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

输入 git status 查看当前分支状态:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

提示你目前修改是最新的,没有任何修改可以提交。

提交代码

不良习惯

很多开发人员,喜欢在一个本地分支上,连续提交代码。这是一个很不好的习惯,尤其是在多人协作的情况下。这会导致每笔提交之间存在依赖关系,即使每笔修改之间毫无瓜葛。进而可能导致 merge 冲突、cherry-pick 合入冗余代码。而且,如果你突然发现,上上一笔提交有问题的时候,我觉得你可能有种想 shi 的感觉。

正确姿势

保留一个本地分支,专门用于同步代码。

比如,我们现在需要在 master 分支上做一个需求,首先输入 git status 查看本地 master 分支的状态:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

提示本地有修改文件,没有提交。咋整呢?有两种处理方法:

  • 啥也不管,直接输入 git pull 进行同步,有冲突会自动合并,合并不了再手动解决。-> 不推荐,可能会在本地产生一条 merge 记录
  • 先将本地修改 stash save,再使用 git pull --rebase 进行同步,最后将暂存的修改 stash pop,有冲突会自动合并,合并不了再手动解决。-> 推荐,自动变基,不会在本地产生 merge 记录
1. 暂存代码

git stash save [-u] ‘update readme.md’

[-u] 表示参数可选,加 -u 会将本地新增文件也暂存,不加则仅暂存本地修改部分。'update readme.md' 为描述,下面列出 git stash 支持的所有操作:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • git stash list 显示所有暂存记录
  • git stash show stash@{0} 查看指定的暂存记录
  • git stash pop stash@{0} 弹出指定的暂存记录
  • git stash drop stash@{0} 删除指定的暂存记录
  • git stash clear 清空暂存记录
2. 同步代码

git pull --rebase

同步结果:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

提示已经是最新的。如果本地代码不是最新的,应当类似于下图:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

3. 弹出暂存代码

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级安卓工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Android移动开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Android)
img

最后

其实Android开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。

上面分享的腾讯、头条、阿里、美团、字节跳动等公司2019-2021年的高频面试题,博主还把这些技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,上面只是以图片的形式给大家展示一部分。

Android学习PDF+学习视频+面试文档+知识点笔记

【Android思维脑图(技能树)】

知识不体系?这里还有整理出来的Android进阶学习的思维脑图,给大家参考一个方向。

【Android高级架构视频学习资源】

【Android思维脑图(技能树)】

知识不体系?这里还有整理出来的Android进阶学习的思维脑图,给大家参考一个方向。

[外链图片转存中…(img-EzZKeDij-1711184487562)]

【Android高级架构视频学习资源】

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/代码探险家/article/detail/796919
推荐阅读
相关标签
  

闽ICP备14008679号