十分钟学会正确的github工作流,和开源作者们使用同一套流程

แชร์
ฝัง
  • เผยแพร่เมื่อ 23 ธ.ค. 2024
  • 这期视频分享一下github工作流,也就是究竟应该如何使用github来维护代码。

ความคิดเห็น • 170

  • @victor880824tor
    @victor880824tor 8 หลายเดือนก่อน +48

    公司真的是這樣 實用推

  • @way2ml
    @way2ml 4 หลายเดือนก่อน +5

    经过我一个多月的操练, 这套流程已经掌握了, 非常丝滑. 之前只会在main上操作. 现在真正感受到了Git的魅力. 另外我还教会了一个人. 哈哈. 感谢高天!

  • @vista4028
    @vista4028 7 หลายเดือนก่อน +29

    真棒,我看过逻辑理解最清晰易懂的。

  • @wlzywang
    @wlzywang 2 หลายเดือนก่อน +2

    第一次看到把git讲得这么条缕分明, 太赞了,谢谢

  • @zealouskoo2517
    @zealouskoo2517 6 หลายเดือนก่อน +9

    如果能再配合一个具体的项目操作就太棒了!非常的感谢,学到了很多!

  • @leobrown3780
    @leobrown3780 7 หลายเดือนก่อน +6

    讲得真好,正好是很多视频教程空缺的,正好是我想看的

  • @iamaguest2
    @iamaguest2 6 หลายเดือนก่อน +3

    果然是高级码农,不仅自己逻辑清晰而且表达的这么易懂

  • @zhengliu3362
    @zhengliu3362 5 หลายเดือนก่อน +1

    讲得不错。能帮到初学git的人,不仅是参加开源项目,还有一些公司也是这个工作流

  • @LeeeroyDex
    @LeeeroyDex 8 หลายเดือนก่อน +62

    一般情况下,master都禁止push,必须走合并review流程。

    • @ca91pdf
      @ca91pdf 8 หลายเดือนก่อน +4

      這不就是他說的嗎?squash and merge

    • @ruoqihuang7502
      @ruoqihuang7502 8 หลายเดือนก่อน +13

      @@ca91pdf 他的意思是不能直接push to main/master, 必须要pull request,就是得是master/main pull from the feature branch

    • @LeeeroyDex
      @LeeeroyDex 8 หลายเดือนก่อน

      @@ca91pdf 项目上最好把master也设定为protect

    • @s8960935
      @s8960935 8 หลายเดือนก่อน +7

      我們也是鎖master push,其他branch就隨便add push pull,master核准完MR後同時delete掉feature branch就乾淨了

    • @Jack-gq5qz
      @Jack-gq5qz 8 หลายเดือนก่อน

      @@s8960935 個人也是比較偏好Gitlab的MR這種用法,雖然Github上都是叫做PR

  • @Editor_PG
    @Editor_PG 8 หลายเดือนก่อน +27

    開一個新的專項來講 giuhub 怎麼使用感覺很棒
    希望之後還能聽到更多有關 github 方面的概念教學
    讓更多初次進到 github 領域的工程師能更快上手
    個人是想聽 github 的流水線(GitHub Actions)這部分的介紹

    • @coladock
      @coladock 8 หลายเดือนก่อน

      看標題我也以為是在講 ci 的部份,build image, unit test, lint check, push to docker 之類的😂

    • @gt689229
      @gt689229 8 หลายเดือนก่อน +1

      @@coladock 看到標題也以為是要講 CI/CD +1

  • @tunglee4349
    @tunglee4349 หลายเดือนก่อน

    最簡潔扼要的 GitHub 工作流介紹!!!!!

  • @fenix20075
    @fenix20075 7 หลายเดือนก่อน +4

    但依然看不明白為何不使用merge而是使用rebase + delete feature,使用merge在source tree 會直接顯示feature與main branch 合拼吧?

  • @v2266514
    @v2266514 8 หลายเดือนก่อน +11

    建議應該補充說明:
    rebase, rebase -i 使用上應該要小心,而不是 force push 就完事了。
    開源項目通常會有多人協作,隨隨便便就對已經存在於 Remote 的 Commit 進行上述的操作,會搞到其他協作者。

    • @minkoder
      @minkoder  8 หลายเดือนก่อน +13

      原则上,不应该有任何两个人同时在一个(可以被push的)branch上工作。

    • @v2266514
      @v2266514 8 หลายเดือนก่อน +25

      ​@@minkoder 是的,原則上是這樣
      不過實務上,不少公司在實際開發的情境
      還是會打破這個原則。
      而且你沒辦法保證或說服你的同事遵循這個原則😐

    • @jasonj3952
      @jasonj3952 8 หลายเดือนก่อน

      @@v2266514 破坏原则的人会让工作无法继续,代码出现冲突,只能搁置,
      不是提交的人搞了其他开发人员,
      是破坏原则的人让搞到项目无法进行,
      同一个公司的人还好快速沟通,
      开源分布工作的项目估计就卡死,或者严重拖延!

    • @foobarjohnny
      @foobarjohnny 8 หลายเดือนก่อน

      ​@@v2266514这种特例太多了,不应该在十分钟的短视频里讲。

    • @outshine5482
      @outshine5482 8 หลายเดือนก่อน

      @@v2266514 如果连这个都不遵守,其实也没有必要遵守这套工作流

  • @gavintao1071
    @gavintao1071 7 หลายเดือนก่อน +1

    跟我们公司的不是完全一样,不同的点主要在code review的步骤。
    github可以直接PR,在remote上就直接把my-feature squash and merge进来,然而,不是所有系统都这么智能的。比如我们的工作流程,就是要先git checkout mainline,然后手动在本地git merge --squash my-feature,然后手动add、commit,但是不push。然后调用公司内部的code review工具,把commit的代码提交成一个code review,组里人review过之后,就可以merge了。区别就是checkout然后merge squash这两步是在本地做,然后同步到remote,还是在remote上做,然后再同步到本地

  • @ihuang7392
    @ihuang7392 7 หลายเดือนก่อน +2

    下次講講 為何rebase is better than merge? 還有cherry pick? 謝謝

  • @Pilouface95
    @Pilouface95 8 หลายเดือนก่อน +1

    很有帮助,感谢分享🥰

  • @henryge
    @henryge 7 หลายเดือนก่อน +3

    讲的真的好清晰易懂,感谢

  • @tonysiu8562
    @tonysiu8562 8 หลายเดือนก่อน +2

    BEST EXPLANATION OF ALL TIME!!

  • @0xBRACKET
    @0xBRACKET 7 หลายเดือนก่อน +2

    视频讲解的比较清晰,但是这个流程可能更适合于个人项目,或者参与人数比较少的情况。比较活跃和贡献者比较多的项目,有两个问题需要注意:1)Github 上首先还是 fork,这样无论怎么修改怎么 Push 都不会影响到其他人的进程;2)强烈不建议 git push -f,个人项目很难撤销,多人项目如果 maintainer 想要撤销容易引起连锁反应

    • @michaelwu1996
      @michaelwu1996 7 หลายเดือนก่อน +2

      Git push force 是僅限於自己在工作的 branch 吧?這樣不應該影響到其他人

    • @gz6x
      @gz6x 5 หลายเดือนก่อน

      请问fork repo上的修改怎么提交到原来的官方repo呢?

    • @0xBRACKET
      @0xBRACKET 5 หลายเดือนก่อน

      @@gz6x 发一个 merge request

    • @wzhings
      @wzhings 2 หลายเดือนก่อน

      感谢,如果不用force, 可以使用其他的什么做法代替呢?

    • @0xBRACKET
      @0xBRACKET 2 หลายเดือนก่อน

      @@wzhings 协作的项目,fork之后在自己的代码库里修改、提交,测试完成之后发 pull request,等maintainer review/merge

  • @mi6le10b15
    @mi6le10b15 2 หลายเดือนก่อน

    正是我目前的操作流,nice!

  • @samuelsun220
    @samuelsun220 7 หลายเดือนก่อน +2

    exactly 就是工业界的git流程 ,简洁明了。

  • @donzhu4996
    @donzhu4996 2 หลายเดือนก่อน

    太感谢了,终于知道怎么用

  • @youliangqian
    @youliangqian 7 หลายเดือนก่อน +1

    很有用的知识,对学习很有帮助😄

  • @kjm15246
    @kjm15246 7 หลายเดือนก่อน

    講解的非常清楚 👍

  • @weibao9176
    @weibao9176 7 หลายเดือนก่อน

    太清晰了,感谢

  • @魚-l4h
    @魚-l4h 7 หลายเดือนก่อน

    圖文並茂,講解的很清楚,很好!🙂

  • @jacky02122012
    @jacky02122012 7 หลายเดือนก่อน +1

    多謝生動的講解,受益非常多。
    大神,下次能不能講解一下cherry Pick? 先謝謝了!

  • @zacks.s
    @zacks.s 5 หลายเดือนก่อน

    视频讲的很好, 不过最好再讲一下 post-pull operations (假如还要在 my-feature 继续开发的话). 否则 my-feature 和 main 版本不一致, 后续可能会有问题.
    ```sh
    git checkout my-feature
    git pull origin main --rebase
    ```
    假如这个branch不用了, 删掉就行; 或者用从main开新的branch

  • @gz6x
    @gz6x 5 หลายเดือนก่อน

    但有些repo比如s3fs只有一个master 分支,那么就必须在个人forked repo修改对吧,那以后再怎么合并回原来的官方repo呢?

  • @hunterxu9019
    @hunterxu9019 5 หลายเดือนก่อน

    请问你在做Git workflow的视频里用到的画图/ppt软件是什么呀?谢谢

  • @limjenny7815
    @limjenny7815 7 หลายเดือนก่อน

    谢谢大佬带路,很有帮助

  • @haodeng9639
    @haodeng9639 8 หลายเดือนก่อน

    不错,讲的很清晰。

  • @王超-j9u
    @王超-j9u 7 หลายเดือนก่อน

    讲的真好!

  • @yzc1128
    @yzc1128 หลายเดือนก่อน

    这个幻灯片是用什么做的呢?

  • @vaporeon2822
    @vaporeon2822 7 หลายเดือนก่อน

    想问git rebase 时候用的是 .git 的 main 还是 disk 的 main, 如果是前者, 是否 git fetch origin main && git rebase main 也能达到相同目的, 不需 git pull origin main

  • @gy0624ww
    @gy0624ww 8 หลายเดือนก่อน

    请问,如果git rebase master 之后,在merge request之前, master有更新了。 这种情况怎么办?

  • @xtjane
    @xtjane 8 หลายเดือนก่อน

    大佬,请问在checkout和switch命令之间该如何选择呢

  • @AliverLenX
    @AliverLenX 7 หลายเดือนก่อน

    现在 git 切分支可以用 git switch [-c] branch-name 了呢

  • @michaelwu1996
    @michaelwu1996 7 หลายเดือนก่อน

    老師講得很好,只是我的建議是 disk 的 branch 不要刪除,算是留一個備份

  • @hengzhang9671
    @hengzhang9671 6 หลายเดือนก่อน

    讲解的很好,天天都用,但没这么清晰。

  • @王冠信-o1c
    @王冠信-o1c 8 หลายเดือนก่อน

    可以做 git checkout -b my-feature develop 嗎?
    假定已經有 develop 分支,那建立 my-feature 在 develop 上會有什麼樣的疑慮嗎?

  • @twjasper
    @twjasper 8 หลายเดือนก่อน

    清楚!感謝

  • @wantisin9623
    @wantisin9623 4 หลายเดือนก่อน +4

    前面給讚,後面直接介紹rebase我就默默收回讚,問了gpt rebase適合個人、merge適合團隊(關於是否簡化異動軌跡)

  • @adamaiken00
    @adamaiken00 7 หลายเดือนก่อน

    會建議考慮trunk based development多於festure branch

  • @johnrui-ug8nx
    @johnrui-ug8nx 7 หลายเดือนก่อน

    大佬,期待你出静态语言讲解呀!你讲得真的很好!

  • @oliver139
    @oliver139 หลายเดือนก่อน

    Github的話要先fork?

  • @simpereleven7645
    @simpereleven7645 8 หลายเดือนก่อน

    如果当我已经将本地的分支合并到主分支后,还没来得及pull request,另一个人也合并了他的代码,如果我们同时在修改同一个文件,那不会造成冲突吗?

  • @guliya0000
    @guliya0000 7 หลายเดือนก่อน

    after rebase master, I always get diverged feature branch (Xbehind, Ybefore), do you have a good solution for this situation?

  • @liucloud6317
    @liucloud6317 7 หลายเดือนก่อน

    5:50 好像应该是git checkout -b master',而不是main

  • @曹林熹
    @曹林熹 7 หลายเดือนก่อน

    So clear! Thanks 🎉

  • @yuyu-ce4fz
    @yuyu-ce4fz 5 หลายเดือนก่อน

    我看過最棒的,以後對自己項目都這樣做好了

  • @ericchen7849
    @ericchen7849 7 หลายเดือนก่อน

    和gitlab流程几乎一模一样,差异在pull request那里,gitlab里面叫merge request。不过也差不多。

  • @zhizunbao333
    @zhizunbao333 8 หลายเดือนก่อน

    5:25 在local/my-feature 直接git pull origin main, 如果有conflict,resolve conflict,然后commit and push到remote my-feature. create PR, approve后就可以merge去main了。 这个流程更简洁,有什么潜在问题吗?

    • @minkoder
      @minkoder  8 หลายเดือนก่อน +1

      没问题,merge和rebase都是可选的feature branch方案。只要你意识到你在git pull origin main的时候实际上是做了两个操作,fetch到了local main,同时merge到了current branch就行。因为有的时候你只需要git merge main(如果你的local main已经是最新的)。

    • @YuelengWang
      @YuelengWang 8 หลายเดือนก่อน

      但是一般来说 有commit记录 是不会mess up 的 毕竟只要 reset head到前一个就好了。 anyway 其实是一样的哈哈

    • @binz735
      @binz735 8 หลายเดือนก่อน

      @@minkoder 我是新人,我就是直接在local/my-feature上git pull origin main,然后就是经常有冲突了,老提示merge --no-ff 这跟普通的merge有什么不同;要是再出一期视频讲讲merge的流程以及常见的冲突情况就好了

    • @zhiqunlai2996
      @zhiqunlai2996 8 หลายเดือนก่อน

      @@binz735 推一個,我也想知道常見衝突

  • @許哲綱-q5d
    @許哲綱-q5d 8 หลายเดือนก่อน

    您好 講得真好 我想請問一下 刪掉那些commit只保留一個commit不會一次有太多程式碼修改嗎
    這樣要除錯會不會比較不好除錯呢?
    用fork的方式如何呢?

    • @minkoder
      @minkoder  8 หลายเดือนก่อน +6

      每个feature squash成一个commit是未来读起来更好读的。如果一次改了太多程序可能说明这个feature不应该一个PR完成。是不是fork和这个事情无关,只是决定了feature branch是在原repo完成还是fork的repo完成。

  • @kevincheng3702
    @kevincheng3702 8 หลายเดือนก่อน +1

    所以實務上不會使用到git merge嗎?

    • @minkoder
      @minkoder  8 หลายเดือนก่อน +2

      看团队的喜好。CPython团队就希望feature branch在update到main的时候用merge,因为对code review更友好。

    • @blchen1
      @blchen1 8 หลายเดือนก่อน +1

      @@minkoder 确实如此。我们组和其他隔壁组合作的时候大家都是用merge

    • @hsiehmin787
      @hsiehmin787 8 หลายเดือนก่อน +1

      這一串看不太懂,為什麼merge會對code review友好呢😢

    • @九天之羽
      @九天之羽 8 หลายเดือนก่อน

      @@hsiehmin787 我也喜欢merge, 不喜欢rebase. rebase 会打乱原来的顺序. 假设你针对当前的代码添加了新功能还没提交, 但是同事提交了一个破坏更新. 你用rebase把同事的代码放到前面, 自己的放的后面, 最初的提交记录就丢失了.而你用merge会保留所有操作的时间线.

  • @huacai168
    @huacai168 8 หลายเดือนก่อน

    有一个疑问,假如说master分支上squash&merge之后,变成update2。其他分支也在这个基础之上merge进来了master。但update2这个merge的代码有bug,需要回滚,或者需要bugfix,这个时候应该要怎么要操作

    • @minkoder
      @minkoder  8 หลายเดือนก่อน +4

      revert本身是可能出现conflict的,需要手动处理,这个是很正常的事情。但是如果相对大家开发的内容比较独立,即使你的commit之后有很多commits,在revert的时候依然可能是clean的。单独开个PR做revert就好。另外明天会有个视频讲撤销。

    • @pacersgo
      @pacersgo 8 หลายเดือนก่อน +2

      我们一般不滚回(gitflow),如果不是紧急的bug就建一个feature 分支,修改后并入develop分支,如果是紧急的bug就建立一个hotfix的分支,直接在main上修改

  • @PotatoMan1491
    @PotatoMan1491 8 หลายเดือนก่อน +1

    之前我一直納悶pro都是怎麽做的,這個好!

  • @zishengliang202
    @zishengliang202 8 หลายเดือนก่อน +1

    5:51 应该是 `git pull origin main` 吧, 之前用的都是 `main`

    • @foobarjohnny
      @foobarjohnny 8 หลายเดือนก่อน

      你是对的。

  • @印小布
    @印小布 8 หลายเดือนก่อน

    讲的不错。

  • @wycmiracle
    @wycmiracle 6 หลายเดือนก่อน

    说的太好了,别的教程都讲什么add push 也没讲冲突怎么解决 没讲怎么使用

  • @gojosensei-tvgame
    @gojosensei-tvgame 8 หลายเดือนก่อน +2

    這是我看過最簡單清楚的說明了👍 但說真的我還是覺得github flow把事情搞的太複雜😂

  • @heaton1451
    @heaton1451 7 หลายเดือนก่อน

    終於懂了 感謝

  • @pacersgo
    @pacersgo 8 หลายเดือนก่อน

    请问同时进行多版本开发怎么办?每个版本开一个main branch吗?

    • @minkoder
      @minkoder  8 หลายเดือนก่อน

      这种情况相对少一些。但是确实会出现多主branch开发的,一般就不叫main了,每个主力branch都有个自己的名字。

  • @nickel-alloys
    @nickel-alloys 8 หลายเดือนก่อน

    严谨又高效 不过最好解释一下参数的功能 比如-f会不会有什么危害

  • @gary-qt7tj
    @gary-qt7tj 8 หลายเดือนก่อน +4

    多人合作一般推薦使用 merge 而不是 rebase,因為 rebase 會改變 git history 而 merge 不會

    • @minkoder
      @minkoder  8 หลายเดือนก่อน +6

      你在feature branch上的任何history都不会被最终保留。理论上你的feature branch也不应该有多人合作。

  • @liuwenming
    @liuwenming 6 หลายเดือนก่อน +1

    没讲到fork, 我一开始就不知道fork别人项目, 再进行提pr的工作流

    • @wzhings
      @wzhings 2 หลายเดือนก่อน +1

      哈哈,我也犯过这个错误

  • @雪奈-k7t
    @雪奈-k7t 2 หลายเดือนก่อน

    感謝

  • @乾淨核能
    @乾淨核能 8 หลายเดือนก่อน +1

    感謝!請問在開發新功能(fearture1)的時候,是在main branch 上開發?還是應該新建一個,是在新建另一個dev feature branch在上面開發,結束之後再merge回main呢?是不是每開發一個新feature 就要有一個對應的feature branch?
    如果merge 回main之後,main 又新增了幾個commit

    • @minkoder
      @minkoder  8 หลายเดือนก่อน +5

      永远不在main上做任何开发。main上的每一个commit,都应该是feature branch PR过来的(当然是理论上,我自己的个人项目很偶尔也会违背这个原则,但是尽量)。feature merge回main之后,这个feature就完成了。修改这个feature是一个新的feature(这里要看你怎么理解feature这个词,更合适的词可能是task)。这时候从main再branch出来,再做修改。每个feature branch只是保证要做一个完整的commit到main上。

    • @乾淨核能
      @乾淨核能 8 หลายเดือนก่อน

      @@minkoder 感謝您

  • @miaohf
    @miaohf 8 หลายเดือนก่อน

    必须赞

  • @qjfu-ex1hd
    @qjfu-ex1hd 8 หลายเดือนก่อน

    解决了我的疑惑!!

  • @franciszhang0302
    @franciszhang0302 8 หลายเดือนก่อน

    天哥,可不可以讲讲实际使用是如何搭配vscode使用的,我用的时候commit时候,会生成一个文件还需要我自己手动取消注释。您讲这个的应该是命令行的git使用,想看看大家都实际是用的什么工作套件。

    • @gradypark5390
      @gradypark5390 8 หลายเดือนก่อน

      VSCode 的 git 源代码管理插件是一样的,只是图形化运行 git 命令。不是很懂“会生成一个文件还需要我自己手动取消注释”是什么意思,能具体说说吗?

    • @lavonzux
      @lavonzux 8 หลายเดือนก่อน

      下commit時出現的文件叫commit message,是用來描述你這個commit做了/修改了什麼。

    • @SecludedRain
      @SecludedRain 7 หลายเดือนก่อน

      你直接git commit -m " " 在雙引號之間寫入就好commit資訊就好

  • @Bongo-y8b
    @Bongo-y8b 2 หลายเดือนก่อน

    漂亮!

  • @stevekeol
    @stevekeol 8 หลายเดือนก่อน

    UP朱,是不是应该改成github 的工作流程,而非工作流? 工作流的话,几乎都会认为是github action 那一套吧

    • @0xBRACKET
      @0xBRACKET 7 หลายเดือนก่อน

      来源于 Github Workflow 这个单词,一般也不会认为是 Github Actions

  • @MonkeyDLuffy-cq2lo
    @MonkeyDLuffy-cq2lo 5 หลายเดือนก่อน

    先订阅以后慢慢看

  • @yangwang9688
    @yangwang9688 8 หลายเดือนก่อน

    Local和Disk有什麼區別?

    • @ICE_WORK
      @ICE_WORK 8 หลายเดือนก่อน +1

      Disk就是你的物理磁盘,你的工作目录,你实际编辑代码的地方,保存着你当前所在分支的文件以及用于版本控制的文件。Local则是git的一个功能,即本地仓库的元数据,保存本地仓库的描述信息,比如做了什么修改,当前位于哪一个分支等等信息。Local本质是一些包含上述信息的文件,实际上也保存在你的硬盘上,比如.git文件夹下面。你可以看看add、commit命令前后.git目录下面的文件内容变化。

    • @LinkChenTW
      @LinkChenTW 8 หลายเดือนก่อน +3

      Disk的東西要先commit到Local,在Local處確定這些commit的東西都是正確的,才push到Remote。
      你可以想像Local就是你的對外窗口,負責和Remote端的人接洽。至於你的內部(Disk和Local)要怎麼亂怎麼糟,那是你自己去處理,Remote端的人不管。Remote真正關心的是Local交給他的東西。

  • @alexfu2422
    @alexfu2422 7 หลายเดือนก่อน

    应该使用git branch -d而不是-D,-d会检查,-D实际是--delete --force

  • @pingpangqiu5605
    @pingpangqiu5605 8 หลายเดือนก่อน

    请问一个feature branch什么时候应该做一个commit?应该尽量多一些commit来抓住更多改动的细节还是commit越少越好?既然最后都要squash是不是没必要做太多commit?

    • @minkoder
      @minkoder  8 หลายเดือนก่อน

      做多少commit主要影响的是code review和你自己的history track。它不影响合并之后的事情。

    • @jiazhechen
      @jiazhechen 8 หลายเดือนก่อน

      我的理解是,写了一些东西以后,到某一个时间点你会想要跑一下代码看看,初步测试一下这些修改。这个时间点上如果这些初步的测试能通过,那就是一个比较好的commit时间点了。commit不应该太少的原因不只是为了方便其他想要查看开发进度的人理解,也是一种帮助自己整理开发过程思路的手段。如果你的很多东西都堆在一个commit里分不开,那一定程度上说明你的思路也比较混乱,并不能清晰地描述开发过程中的每一个小进展。学会如何把握commit大小本身就是对提高项目规划能力的一种考验。供参考。

  • @gunale926
    @gunale926 8 หลายเดือนก่อน

    add commit push太真实了

  • @kfove7347
    @kfove7347 7 หลายเดือนก่อน

    很有用

  • @ArcsaberkxL
    @ArcsaberkxL 8 หลายเดือนก่อน

    还以为我看错了,,,10 天前视频,我在 阿b 好早之前看的了😂

  • @FluffyNanachi
    @FluffyNanachi 8 หลายเดือนก่อน

    对于个人开发而言,是不是就没必要用这一套流程?除非我是为了适应未来可能的合作流程?

    • @FluffyNanachi
      @FluffyNanachi 8 หลายเดือนก่อน

      另外,还想问一下,对于审查能不能merge到main的情况,审查者的流程是什么呢?他为了审查代码,总得把要审查的部分在自己的本地check out吧?所以实际上他要在本地pull下来my-feature的分支,然后测试?那如果他要修改合并其他的东西呢?建立一个临时的测试分支吗?

    • @minkoder
      @minkoder  8 หลายเดือนก่อน +1

      哪怕是纯个人项目,也推荐走这个流程,最主要的原因是可以让你的commit history比较干净,bisect问题的时候更方便,尽可能保证每个commit都work。大部分的merge是不需要check out这个branch的,因为有CI的帮助,可以在github action之类的地方跑测试。只需要看新的代码写的怎么样,测试覆盖如何,就行了。一般来说,code review只会提出意见,不会去改别人的branch。

  • @shooter556002
    @shooter556002 หลายเดือนก่อน

    项目里多于3个人的时候处理conflict就会有想死的感觉,上午一次,下午一次,一天少做一次第二天都能死

  • @悟空-o5l
    @悟空-o5l 8 หลายเดือนก่อน

    我们小团队都在 dev add commit push , master 都被遗忘了 。。。😄

  • @fredgan2036
    @fredgan2036 8 หลายเดือนก่อน +3

    有点标题党的感觉,我以为你讲的是github workflow,结果你讲的是git

  • @kirito8116
    @kirito8116 8 หลายเดือนก่อน

    开发组的人越多约有用,如果就3~5个人,一把梭其实效率最高

    • @呂學霖-m6t
      @呂學霖-m6t 7 หลายเดือนก่อน

      當有bug或是人員開始流動時就是痛苦的開始了

  • @郭zq
    @郭zq 4 หลายเดือนก่อน

    nice

  • @Jason-lm2yq
    @Jason-lm2yq 7 หลายเดือนก่อน

    我以为要讲github workflow 没想到讲的是workflow

  • @WeijingJayLin
    @WeijingJayLin 7 หลายเดือนก่อน

    我這邊 遇到的一般是 用 merge 而不是 rebase,盡可能保留歷史... force 是危險的操作... 公式一個 repo 會有 7~8 人同時維護

  • @dongwalker6234
    @dongwalker6234 7 หลายเดือนก่อน

    squash学到了,我们公司都是直接merge。。。

  • @AdamChou-mu3ow
    @AdamChou-mu3ow 8 หลายเดือนก่อน

    git小白聽一半迷路聽完頭暈嗚嗚嗚😅🥴😵‍💫😵

  • @davidliu5095
    @davidliu5095 8 หลายเดือนก่อน

    你自己的github push项目,你merge什么

  • @yingmo6910
    @yingmo6910 หลายเดือนก่อน

    不是所有项目pr后都会squash

  • @John_Shi305
    @John_Shi305 7 หลายเดือนก่อน

    讲的还是比较清晰的

  • @abeltan-ch5tt
    @abeltan-ch5tt 5 หลายเดือนก่อน

    Make simple things complicated. You should have your team members manage commit and pull requests based on their roles and rules.

  • @KL-gc2hx
    @KL-gc2hx 6 หลายเดือนก่อน

    没必要学,装个tortoise git点界面就行了😊

  • @jungding
    @jungding 8 หลายเดือนก่อน +1

    懂的人不用听,不懂的听了也还是不懂🙃

  • @hughtong5551
    @hughtong5551 6 หลายเดือนก่อน

    公司和这套流程一摸一样..

  • @wonderfulcxm
    @wonderfulcxm 8 หลายเดือนก่อน +69

    我去,我还以为讲github action,看了半天原来是讲git基础,额。。。

    • @楊景程-v1j
      @楊景程-v1j 8 หลายเดือนก่อน +3

      真的...

    • @darrenlin7204
      @darrenlin7204 8 หลายเดือนก่อน +9

      你省了我十分鐘 感謝

    • @didi098710
      @didi098710 8 หลายเดือนก่อน +9

      基础也需要学习

    • @Flora7489
      @Flora7489 7 หลายเดือนก่อน +2

      太感谢了

    • @shuangg
      @shuangg 7 หลายเดือนก่อน +3

      都说了是工作流了

  • @rogers228
    @rogers228 หลายเดือนก่อน

    聽君一席話,勝讀十年書

  • @yao5673
    @yao5673 7 หลายเดือนก่อน

    这是git workflow 不是github