前段時間棧長有看到 Github 和 master 分支變動的新聞,當時沒有注意細節,直到今天我建立倉庫時:java
看了半天感受有點不對勁啊。。。git
怎麼 master 不見了,以前默認主幹分支名稱都是叫 master 啊,直到如今我才意識到了這個變動,原來是把 master 變成 main 了。github
剛開始,我還有點不肯意接受這個現實,畢竟用了這麼多年的 master,養成習慣了,也有感情了,你說變就變...spring
我原本還想着說無論了,我繼續改爲用個人 master 吧,後來仍是想着用 main 算了,畢竟官方變動應該有它的理由,順便想着研究下這背後的邏輯。。intellij-idea
一、爲何要變動 master 名稱?ide
關注公衆號Java技術棧的朋友應該都知道,今天 7 月份的時候 MySQL 也有相似的舉動:《MySQL 宣佈中止使用 master、slave!》,MySQL 宣佈將 master、slave、blacklist(黑名單)和 whitelist(白名單)等術語分別替換爲 source、replica、blocklist 和 allowlist。spring-boot
這其中的奧祕就不用多說了,在國外,主、從、黑都涉及到種族歧視,因此不少涉及到這些的都被更名了,包括黑人牙膏,因此如今國外不少科技公司也加入了更名的征程也不奇怪了。工具
二、爲何是 main,而不是其餘名稱?性能
抱着學習的精神,我也找到了 Github 的官方更名申明:學習
Github 分析認爲,main 是 master 的最佳替代名稱,也是最受歡迎的,由於它可以很好的翻譯大多數語言,也由於 main 夠短,不用費腦子,憑肌肉記憶就讓你見名知義。
若是你想讓新建的倉庫仍是要用 master 或者默認其餘名稱,也不是不行,能夠在設置中修改默認的名稱:
設置默認倉庫分支名稱地址:
三、之前的 master 受不受影響?
從官方的申明來看,之前建立的倉庫不受影響,Github 會分幾個階段進行修改,目的是儘量的減小對現有項目的干擾。
棧長也看了下以前建立好的倉庫,主幹依然仍是 master,因此說以前的並不會受影響,只是新建的默認主幹分支名稱變成 main 了。
想象下,若是 Github 批量把全部的倉庫 master 名稱都修改成 main,那勢必是一場災難,由於你們的主幹都叫 master,它若是冷不丁的改了,主幹的更新、推送就會受到影響,那些依賴 Github 倉庫的業務也會受到影響,全球用戶衆多,因此確定不敢貿然變動的。
因此,如今不變動也沒事,Github 正在研發一款工具,到今年年末,現有的倉庫也可以無縫地重命名默認分支了。
一塊兒拭目以待吧,棧長也會持續關注動態,有消息公衆號Java技術棧第一時間推送,不要走開。
近期熱文推薦:
1.Java 15 正式發佈, 14 個新特性,刷新你的認知!!
2.終於靠開源項目弄到 IntelliJ IDEA 激活碼了,真香!
3.我用 Java 8 寫了一段邏輯,同事直呼看不懂,你試試看。。
以爲不錯,別忘了隨手點贊+轉發哦!