回到 TFS 時代,您可以看到誰簽出了代碼,然后再也沒有簽回過。
開發人員經常忘記在開始之前(或根本沒有)提交他們的更改,因此作為領導,我會使用該功能向某人發出警告以檢查他們的作業。
有沒有辦法用 git 做到這一點?我發現自己每天都越來越想念這個功能
uj5u.com熱心網友回復:
有沒有辦法用 git 做到這一點?
不。Git 不提供“簽出”檔案的功能來表明您正在處理它們。Git 中的“結帳”意味著完全不同的東西。
每個開發人員都有一個完整的存盤庫本地克隆及其整個歷史。無法判斷誰可能正在處理某些特定檔案,或者特定開發人員可能正在處理哪些檔案。
相反,Git 強呼叫于檢測和修復合并沖突的好工具。
由于開發人員在處理檔案之前不需要鎖定檔案,因此無需在一天結束時提醒開發人員解鎖檔案。
uj5u.com熱心網友回復:
是的,但它不是工具,而是更多如何設定開發程序。
Git 不是這樣作業的。每個人都有自己的私人倉庫,并且有用于合并的基礎設施。您團隊中的人員致力于他們的本地存盤庫,并偶爾將更改推送到他們在該.git/config存盤庫檔案中指定為“上游”的任何存盤庫。
要獲得您似乎想要的行為,您需要將一個存盤庫指定為“the”存盤庫(通常由 GitHub 或 Azure Devops 托管)并要求每個人將其指定為他們的上游。如果他們通過從 GitHub 存盤庫克隆來創建他們的存盤庫,事情會像這樣自動設定。
現在,你不希望他們將每一個小的廢料更改和實驗合并到上游/主要,除了讓歷史變得一團糟之外,他們半完成的作業會干擾其他人。因此,當他們開始 sprint 時,您希望他們做的是從上游/主要拉最新,然后在他們的作業站上創建一個以作業項命名的分支feature/add-pink-widget-support。
這樣做有以下理想的結果。
- 他們可以在不給其他人帶來麻煩的情況下,隨時將那個分支中一半完成的更改推送到上游存盤庫。
- 每次他們這樣做時,他們的作業都會隱含地備份到異地。
- 你可以看到他們所有的變化。
- 您可以在該分支上進行測驗。
- 當該作業項的所有作業都完成并且所有測驗都正常后,您可以一次性合并到 main。
您說的是“未提交”的更改。這不會向您展示這些,但以這種方式做事可以消除不想提交更改的原因。沒有人想成為破壞 CICD 構建的人,所以一個獨特的分支是你和你的開發人員將他的更改與主分支分開的一種方式,直到它們準備就緒。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/368829.html
標籤:混帐
