3

ファイルが表示される場合.gitconfig、ユーザーの名前と電子メール アドレスが含まれています。ユーザーが設定できるため、常にIDをマスクできるため、ユーザーから保護したいと考えています。

例、私の会社のディレクトリでは、次のように私の名前はジェラルド、アンソニー(姓、拳名)です。

ここで人々が間違えているのは、一部のユーザーは自分の名前を次のように指定しています

  • ジェラルド
  • G.アンソニー
  • GA
  • アンソニー
  • Aガラル

正確な情報が含まれていないため、混乱を招きます。

ユーザー ID をどのように管理しているか教えてください

4

4 に答える 4

4

これは社会問題であり、社会的手段によって解決されるべきものです。

誰が何かをチェックインしたかを本当に確認したい場合は、署名付きタグを使用する必要があります (会社の中央 CA によって署名された公開鍵を使用)。

于 2011-02-16T10:13:07.353 に答える
3

Git だけでそれを実際に強制することはできませんが (すべての分散モデルを再考しない限り)、gitolite のように Git リポジトリ サーバーの周りに何らかのカプセル化がある場合は、いくつかのスクリプトを使用してユーザー名を確認できます。

例: update.email-check.

プッシュされたすべてのコミットの「作成者の電子メール」フィールドをチェックし、この電子メールがプッシュしているユーザーが持っていると予想される電子メールと一致しない場合は許可しない、Gitolite固有のスクリプト。

そのスクリプトに含まれる「哲学ノート」は非常に率直ですが、要点を述べています ;)

哲学的なメモ:

これを行うと、「 DVCS 」の「 D」が壊れ、プッシュに関する限り、すべての開発者が集中型モデルで作業することを余儀なくされます。 他の誰かのコミットとプッシュを修正することを防ぎます (これにはリベース、チェリーピッキングなどが含まれますが、現在はすべて不可能です)。 また、どちらも結果をサーバーにプッシュできないため、2 人の開発者間のオフラインでの共同作業は役に立たなくなります。

PHB は、コミッター ID を検証することは、コードをレビューして QA/テストを実行することと同じではないことに注意する必要があります。コードのレビュー/QA を行っていない場合は、とにかく価値がない可能性があります。逆に、コードをレビューして QA/テストを実行する場合、作成者の電子メールを検証する必要はありません!

DVCS では、一連のコミットをプッシュした場合、(ある意味で) それらを承認したことになります。シリーズに「署名」する最も正式な方法は、gpg 署名付きタグを追加してプッシュすることですが、ほとんどの人はそこまで行きません。
ただし、Gitolite のログ ファイルは、その説明責任をある程度保持するように設計されてます。管理者が定義したコマンドについては、contrib/adc/who-pushed を参照してください。特定のコミットを誰がプッシュしたかをすばやく簡単に知ることができます。

とにかく、ポイントは、このスクリプトの唯一の目的は

  • まだ*D*VCSを理解していない人にパンダー
  • または、愚かなPHBのチェックリストの項目にチェックを入れます
于 2011-02-16T09:59:07.957 に答える
0

署名されたタグをコミットに追加して、何らかの検証を行うことができます。

于 2011-02-16T11:33:58.713 に答える
0

ユーザーは GIT_AUTHOR_NAME と GIT_AUTHOR_EMAIL を設定することでこれらの設定をオーバーライドできるため、.gitconfig を保護しても問題は解決しません。

于 2011-02-16T11:59:29.650 に答える