2017-12-18 275 views
2

我想通過高級開發人員來檢查初級開發的代碼,他們承諾他們的代碼SVN之前。我如何使用SVN管理它?我的觀點是高級開發人員通知Junior開發人員想要提交他們的代碼(例如通過電子郵件),並在他們確認後,代碼提交。 我們的SVN是windows服務器上svn的高級開發人員確認前提交代碼

謝謝。

+1

我不認爲在Subversion中有這樣的支持。也許你想探索轉向Git。 – tripleee

+1

雖然git支持更好的分支策略,但「這樣的事情」被誇大了。 –

回答

1

顛覆不直接支持「代碼審查」的模式一樣,你可以用來與GitHub的拉動請求。有一些附加工具可能對此有所幫助,但我不能推薦任何,因爲我從未使用它們。

你可能想嘗試是有開發商在自己的分公司工作,並承諾這一點,那麼請高級開發人員來審查,然後合併到中央幹線或另一個分支。

+0

這。對此的附錄是,這實際上可以通過svn authz文件實施。授予(初級?)開發人員對分支機構的讀寫訪問權限,並嚴格閱讀中繼線的訪問權限。然後,給高級開發人員讀/寫訪問幹線(以及分支機構,如果需要的話)。這樣,合併到主幹__中的唯一更改就是來自高級開發人員。 – Chris

1

有兩種可能性:

  1. 您可以使用分支和SVN的--reintegrate選項將它們合併自動回主幹。這工作得相當好,只要你遵循一些規則(可以彎曲他們,你可以打破他們,但你會遇到困難):

    • 從來沒有做任何樹合併(合併子目錄;僅在主幹或分支合併級別)
    • 在不同的分支之間永不合並,除了你正在分支的路徑(通常這是幹線)。所以沒有同事交叉。
    • 總是將分支中的所有提交合併到中繼,並始終將中繼中的分支完全同步。所以沒有采摘櫻桃
    • 通過遵循這些規則,您可以輕鬆地合併並保持您的樹幹清潔,而無需使用任何修訂版本號。有關更多詳情,請參閱svnbook/merging
    • 也意味着整合合併(從developerbranch到後備箱)總是無衝突的(樹幹)的所有變化通常是由開發商事先合併。如果主幹維護者合併過程中遇到衝突,他拒絕分支,並告訴開發人員同步從主幹合併解決這個矛盾在他的分支
    • 你應該保護樹幹從的初級開發人員提交但既無必要,也很重要的整體過程
    • https://stackoverflow.com/a/7387277/23264更多信息請參見(有一些奇特的ASCII藝術)
  2. 可以接受補丁的人送左右。這是一個非常手動的過程,但它取決於您擁有多少個Junior Developer。請注意,雖然聽起來不可能,但整個svn開發過程的工作原理是將補丁發送到郵件列表,直到您發送足夠的提交者權限。

1

你可以讓你的初級開發者只在分支上工作,並阻止他們提交主幹。你可以通過在SVN服務器上設置特定的回購路徑的權限,或者通過編寫預先提交的掛鉤來實現。通過設置一個壓倒一切的權限

VisualSVN Server Path Properties

我有樣,在這個例子這裏被騙:

如果您使用VisualSVN服務器,你可以在此對話框中進行配置。對於大型團隊來說,如果您在repo上設置只讀權限,然後明確授予開發人員的/ branches /和高級開發人員的/ trunk /的訪問權限,則需要更具擴展性的東西。