Git 从入门到跑路(二)

6

等组长走了,左小白就带着这三个疑问去寻求答案,首先工做区、暂存区、本地仓库、远程仓库都是啥?一顿搜索引擎,看了几篇文章,大概是明白了。git

原来新增,更改,删除文件这些动做,就是发生在工做区,当咱们使用命令git add,那么这些更新就会出如今暂存区中。而本地仓库和远程仓库又是什么鬼?原来执行git commit,代码是提交到本地仓库,再执行git push,才把代码提交到远程仓库,这和 SVN 仍是有很大的区别的,怪不得组长问我 git commit就提交了?我太菜了。web

问题来了,我若是git add,我又不想 add 了,要怎么操做?亦或是git commit,我想撤销,怎么作?这也是第二个疑惑“他刚刚提交好了,组长一顿操做是如何回退的?”,带着这个疑惑,左小白又是一顿搜索引擎,搜了好十几页才获得答案,某度真是辣鸡。微信

若是git add后想撤销,能够经过命令git reset HEAD <file>,若是git commit后想撤销,能够经过命令git reset HEAD^,牛逼啊,今天学到知识了,左小白以为还不够,再整个图,加深记忆。编辑器

测试

sequenceDiagram title: Git 示例 participant A as 工做区 participant B as 暂存区 participant C as 本地仓库 participant D as 远程仓库 复制代码A->>B:git add <file> B-->>A:git reset HEAD <file> B->>C:git commit C-->>A:git reset HEAD^ C->>D:git push 复制代码

当小白画完这个图,一看时间已经来到 22:30 了,心想赶忙溜,狗命要紧,第三个疑问明天再整吧。搜索引擎

坐了一个小时的地铁,小白终于到家了,洗洗刷个抖音,知足地睡去了。url

7

叮咚叮咚……7 点的闹钟响了……spa

起床,咦,内内怎么湿乎乎的,好像昨晚梦到女神,还跟她**,OMG。code

又是一个小时的地铁,来到公司,左小白还想着“他若是删除了文件,怎么 add?”cdn

  • git add -u

提交全部被删除和修改的文件到数据暂存区。

  • git add .

提交全部修改的和新建的数据暂存区。

  • git add -A

提交全部被删除、被替换、被修改和新增的文件到数据暂存区。

左小白测试了一下,发现git add .git add -A功能是同样的,无论了。

8

组长:小白,你登陆功能是作好了吧。

左小白:嗯,作好了。

组长:自测没问题的话,把代码提交上来吧,而后找项目经理 review 下。

左小白:好的。

以前组长已经帮左小白 add 好了,小白就直接 commit,而后 push 成功了。微信上他就找项目经理,帮忙 review 下代码,大约 20 分钟后,项目经理来消息了,丢了一个文档,小白一头雾水,有点很差意思,但代码还得上库,鼓起勇气问道:“这是什么?” 项目经理:这是代码提交规范,你的这个提交信息“Login”不符合规范,按照“[模块][bug/feature]描述”改下。

好吧,这给小白带来了难点,他代码都已经上去了,还怎么改提交消息?难道要把代码 Abandoned 从新提交?那就试试吧!当左小白执行git status .,提示根本就没有文件修改,这行不通啊,怎么办?怎么办?

未完待续……

更多文章请关注公号:吴小龙同窗

相关文章
相关标签/搜索