Github 太狠了,居然把 "master" 幹掉了

前段時間棧長有看到 Github 和 master 分支變更的新聞,當時沒有注意細節,直到今天我創建倉庫時:

Github 太狠了,居然把

看了半天感覺有點不對勁啊。。。

怎麼 master 不見了,之前默認主幹分支名稱都是叫 master 啊,直到現在我才意識到了這個變更,原來是把 master 變成 main 了。

剛開始,我還有點不願意接受這個現實,畢竟用了這麼多年的 master,養成習慣了,也有感情了,你說變就變…

Github 太狠了,居然把

我本來還想著說不管了,我繼續改成用我的 master 吧,後來還是想著用 main 算了,畢竟官方變更應該有它的理由,順便想著研究下這背後的邏輯。。

1、為什麼要變更 master 名稱?

關注Java技術棧的朋友應該都知道,今天 7 月份的時候 MySQL 也有類似的舉動:《MySQL 宣佈停止使用 master、slave!》,MySQL 宣佈將 master、slave、blacklist(黑名單)和 whitelist(白名單)等術語分別替換為 source、replica、blocklist 和 allowlist。

這其中的奧秘就不用多說了,在國外,主、從、黑都涉及到種族歧視,所以很多涉及到這些的都被改名了,包括黑人牙膏,所以現在國外很多科技公司也加入了改名的征程也不奇怪了。

2、為什麼是 main,而不是其他名稱?

抱著學習的精神,我也找到了 Github 的官方改名申明:

https://github.com/github/renaming

Github 分析認為,main 是 master 的最佳替代名稱,也是最受歡迎的,因為它能夠很好的翻譯大多數語言,也因為 main 夠短,不用費腦子,憑肌肉記憶就讓你見名知義。

如果你想讓新建的倉庫還是要用 master 或者默認其他名稱,也不是不行,可以在設置中修改默認的名稱:

Github 太狠了,居然把

設置默認倉庫分支名稱地址:

https://github.com/settings/repositories

3、以前的 master 受不受影響?

從官方的申明來看,以前創建的倉庫不受影響,Github 會分幾個階段進行修改,目的是儘可能的減少對現有項目的干擾。

棧長也看了下之前創建好的倉庫,主幹依然還是 master,所以說之前的並不會受影響,只是新建的默認主幹分支名稱變成 main 了。

想象下,如果 Github 批量把所有的倉庫 master 名稱都修改為 main,那勢必是一場災難,因為大家的主幹都叫 master,它如果冷不丁的改了,主幹的更新、推送就會受到影響,那些依賴 Github 倉庫的業務也會受到影響,全球用戶眾多,所以肯定不敢貿然變更的。

所以,現在不變更也沒事,Github 正在研發一款工具,到今年年底,現有的倉庫也能夠無縫地重命名默認分支了。

一起拭目以待吧,棧長也會持續關注動態,有消息Java技術棧第一時間推送,不要走開。


分享到:


相關文章: