2017-08-22 30 views
0

看來,在我們的Team Foundation Server 2015中,當我檢入我們的團隊項目的GIT存儲庫時,它會將提交作者歸入用戶的.gitconfig文件[user]下的任何文件。我覺得這是錯誤的,因爲每個人都用他們的TFS證書(AD證書)登錄到我們的TFS服務器,那麼爲什麼我不希望能夠追溯到特定的TFS團隊成員的提交?如何使用TFS憑證作爲提交作者?

這是可以在TFS或GIT回購服務器端配置的東西嗎?

回答

1

不,這是不可能的,這是由於git是一個分散式 VCS的事實。

爲了能夠交換提交,git使用sha1,它是允許確認提交(及其所有歷史記錄)是唯一的哈希。

而這個sha1是從文件內容和提交元數據中計算出來的。其中一些是作者和提交者的姓名和電子郵件。

如果您想在推送時更改此元數據,您必須修改提交併以不同的sha1結束。

如果SHA1發生了變化,一路git的工作無法正常工作了......

的憑證只是來驗證,如果你要推一些提交,而不是驗證也不改變你推什麼是正確的。

PS:你可以看到的元數據提交使用命令git cat-file -p SHA1_OF_A_COMMIT

2

Git提交是離線創建的,然後推送到遠程。在這種情況下,遠程設備是TFS,但遠程設備可以很容易地成爲GitHub,一個存放在文件共享中的回收站,甚至是本地PC上的另一個文件夾。

所以基本上沒有。提交是基於用戶的.gitconfig而在本地創建的。你不能改變這一點。

+0

但GitHub的承諾不會歸因於GitHub的用戶帳戶? –

+0

GitHub地圖通過查看他們的電子郵件地址提交給用戶帳戶。如果您克隆回購,您仍然可以看到提交使用的任何內容。 –