- , .
- ...?
在一家大公司工作的第一周收到了第一个投资请求之后,大约与我有关。这种反应的原因很简单-并非每个客户/雇主都能在一个平台上负担得起大型团队这样的奢侈品,尤其是移动开发。由于世界上无用的交流和快速交流的可能性,因此并非大型大师在其领域中使用的所有东西都与小型团队相关。简而言之-如果我们已经生活得很好并且没有它可以应对的话,我为什么还要呢?
搬到一家新公司后,我遇到了同样的问题,但又遇到了障碍。如果您还没有弄清楚将要进一步讨论的内容,那就是GIT,更确切地说是AndroidStudio中的内置工具,以及它如何使我们的工作更轻松。
我将尝试忽略一些普通的东西:init VCS; 新建/重命名/推送分支;变基/合并到分支;设置遥控器等我会尝试引起人们的注意,因为担心自己的无知,我已经避免了很长时间(并感到遗憾)。
修改提交
如果您决定补充对上一次提交的更改,则应使用以下命令:
//
git commit --ammend
//
git commit --ammend "New commit message"
您可以加快此过程:
![图片](https://habrastorage.org/webt/vg/05/fb/vg05fb1mewfyi4o-elm8ge3ukf8.png)
编辑提交消息
, PR , , , :
![图片](https://habrastorage.org/webt/jx/n1/l-/jxn1l-q1v__6vfjkccdiuc5e3eu.png)
Interactive rebase
. , N . , / .
, , … , .
, .
//
git cherry master -v
//
git cherry master | wc -l
GUI:
![图片](https://habrastorage.org/webt/x4/kb/sn/x4kbsnbbmusg7g2n2-iesrecpjc.png)
tools:
![图片](https://habrastorage.org/webt/8x/io/ou/8xiooujwqjkhljncnl-n8jk2kfs.png)
, :
![git-rebase-2](https://habrastorage.org/webt/jk/zi/rn/jkzirnqccn794x_sogsfvnajsrq.png)
e :
![图片](https://habrastorage.org/webt/sb/02/yt/sb02ytb2mi-483eg_e4uoedv-oc.png)
:
![图片](https://habrastorage.org/webt/fq/5f/md/fq5fmdoigip4extx1pcoputdrvm.png)
:
![图片](https://habrastorage.org/webt/_e/jk/t9/_ejkt9xdce7o84yppa3y_olny-s.png)
:
# Commands:
# p, pick = ( )
# r, reword = ,
# e, edit = , amend-( )
# s, squash =
# f, fixup = , ( )
, . ? , .
![图片](https://habrastorage.org/webt/ak/pi/vr/akpivr-wdplstrf8wuat5x1yhrs.png)
Force push .
Multiple remotes
, , , .
![图片](https://habrastorage.org/webt/ms/nq/i-/msnqi-wkwftfutawyrysaqo4ap4.png)
? 2 (, ), / :
![图片](https://habrastorage.org/webt/2l/cd/zm/2lcdzmq9m-7bdshd9t5n4sk5rb0.png)
Git blame
:
![图片](https://habrastorage.org/webt/vm/ed/yy/vmedyyqdycqfatytbyts_uylik8.png)
. , IssueNavigationLink
:
//
<PROJECT_ID>-<TASK-ID>: <COMMIT MESSAGE>
( , git-hooks — https://git-scm.com/book/en/v2/Customizing-Git-Git-Hooks)
project/.idea/vcs.xml
:
![图片](https://habrastorage.org/webt/hf/kd/cz/hfkdczb4qogrs9xkpkz9d8c1zzi.png)
:
<IssueNavigationLink>
<option name="issueRegexp" value="([A-Za-z]+\-)(\d+)" />
<option name="linkRegexp" value="https://github.com/IlyaPavlovskii/Android-Environments/issues/$2" />
</IssueNavigationLink>
ID.
![图片](https://habrastorage.org/webt/ij/uk/ab/ijukabxurvckt3qw9tu3tqmhkeg.png)
Git cherry-pick
cherry!
, /, , . , , - , . , … , 1 ( ). ?
![图片](https://habrastorage.org/webt/ll/go/xa/llgoxawfjurey5tb1ndqowmhkpe.png)
![图片](https://habrastorage.org/webt/lb/2h/v0/lb2hv0ug3h3e-rixsd9hasamzp8.png)
:
![图片](https://habrastorage.org/webt/k9/mf/db/k9mfdbsiqjf4tb5lrsk1rocl0ho.png)
总而言之,我想立即回顾一下关于主题的永恒故事:使用VCS的终端或GUI编辑器?这是一个品味问题。显然,如果没有它,CLI GIT是用于特定任务的更强大的工具。但是对于日常任务来说,内置的实用程序包是必须的,它可以与AS中的版本控制系统一起使用,并且可以将开发时间减少数倍。
我希望您在本文中找到了新的东西,并有助于简化您的工作程序。