Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022
ローカル リポジトリにコミットすると、Git にはコミットの一部として自分の名前と電子メール アドレスが含まれます。 この動作により、混乱が生じることがあります。 コミットの名前と電子メールは、Azure Repos などの Git ホストへのサインインに使用する ID と一致しない可能性があります。 それぞれの作成者であったとしても、複数の名前と電子メール アドレスでコミットされている可能性があります。
リポジトリに複数の名前が表示される理由
[履歴] ページで自分の名前を検索し、自分で少し異なる複数のエントリを見つけましたか? あなたはおそらくそれがどのように起こったのか疑問に思ったでしょう。
答えは簡単です:あなたの名前はコミット間で異なる方法で記録されました。
おそらく、2 台のコンピューターがあり、1 台はフル ネーム (たとえば Frances) で構成され、もう 1 台はニックネーム (Frank など) で構成されています。
または、Microsoft アカウントに接続されている自宅のコンピューター (たとえば、 frances@outlook.com) と、雇用主の Microsoft Entra ID インスタンス ( frances_t@fabrikam.com など) に接続されている職場のコンピューターがある場合があります。
時間の経過と同時に設定を変更した可能性もあります。そのため、古いコミットには 1 つの名前があり、新しいコミットには別の名前が付けられます。
Git はどこで自分の名前とメールを受け取りますか?
Git では、名前と電子メール アドレスが 構成ファイルに格納されます。 このファイルは、システム レベル、コンピューター上のアカウントに対してグローバル、またはリポジトリに対してローカルにすることができます。 これらの場所で名前と電子メールが見つからない場合、Git はオペレーティング システムからこの情報を取得しようとします。 Git には、コミットの作成者としてマークする詳細がコミットに含まれています。
新しいマシンで Git を初めて設定する場合は、Git の "ベスト エフォート" 情報を使用してコミットを作成できます。 Git は明示的な名前と電子メール アドレスを設定するように求め、後続のコミットに新しい設定を使用します。 この変更は、多くの場合、1 人の作成者が複数の名前を持つ理由です。
Azure DevOps Services はどこで名前と電子メールを取得しますか?
Azure DevOps Services の詳細は 、プロファイルから取得されます。 プロファイルはもともと Microsoft アカウントまたは Microsoft Entra アカウントの詳細から設定されていましたが、これらの詳細は自分で変更できます。
Web 上のファイルを編集するか、プル要求を完了すると、Azure Repos はコミットの作成者としてプロファイルの詳細を提供します。 これは、名前または電子メール アドレスを異なる方法で指定するもう 1 つの機会です。
Git と Azure DevOps Services で情報をどのように変更しますか?
Git では、次のコマンドを実行して、名前とメール アドレスを変更できます。 例の値を実際の情報に置き換えます。
git config --global user.name "Frances Totten"
git config --global user.email "frances_t@fabrikam.com"
Azure DevOps Services では、右上隅にある画像を選択し、[マイ プロファイル] を選択することで、プロファイルを更新できます。
過去のコミットに対して表示される作成者を変更するにはどうすればよいですか?
ローカルで 1 つの変更を行い、作成者が間違っている場合は、新しい作成者情報でそのコミットを修正できます。 次の例に示すように、必ず Name <email>形式にしてください。
git commit --amend --author="Frances L. Totten <frances_t@fabrikam.com>"
他のほとんどの場合は、既存の作成者情報を保持することをお勧めします。 作成者名または電子メールを変更するには、新しいコミットを作成する必要があります。 コミットを変更する場合、そのコミットから派生したすべての後続のコミットも変更する必要があります。