20

私は SVN から Git への飛躍を遂げています (ただし、SVN への敬意は今でも変わりません)。SVN から Git への用語についていくつか質問がありました。SVN では、多くのリポジトリが次のようにセットアップされます。

- trunk  : The place where all of the main development occurs
- tag    : Storing versions of major releases or important milestones
- branch : Where smaller "branch" development occurs as to not conflict with the main development occurring in the trunk, then is later merged into the trunk

branch/tag/trunkGitの標準的な規則名は何ですか?

お時間をいただきありがとうございます。

4

3 に答える 3

34
  • SVN トランク --- Git マスター (refs/heads/master)
  • SVN ブランチ/* --- Git ブランチ (refs/heads/*)
  • SVN tags/* --- Git タグ (refs/tags/*)
于 2012-10-30T15:23:40.537 に答える
16

Git は、プロジェクトに特定の構造を使用することを強制しません。git 自体にとって重要なすべての情報は、非表示の .git ディレクトリに保存されます。ブランチとタグをリストまたは表示するには、git コマンドを使用します。

git branch 
git tag
...

詳細については、git helpコマンドを使用するか、この無料の本をご覧ください。

于 2012-10-30T15:17:13.187 に答える
10

実際には、直接の類似物はありません。SVN はディレクトリ構造を使用してコピーをリポジトリに直接保存し、ブランチとタグを許可します。したがって、これらのコピーをリポジトリに保持するための構造を作成するという概念があります。

一方、Git はこれをメタ情報として維持し、ハッシュによって識別される「時間」のある時点のスナップショットとしてすべてを扱います。

Subversion はコピーを通じて履歴の特定のチェックポイントをマークします。コピーは通常、tags という名前のディレクトリに配置されます。Git タグははるかに強力です。Git タグには任意の説明を付けることができます (最初の行は commit の場合のように特別です)。実際にタグの説明にリリースのアナウンス全体を保存する人もいます。タグ付けした人の ID が保存されます (コミッターの ID と同じ規則に従います)。コミット以外のオブジェクトにタグを付けることができます (ただし、これは概念的にはかなり低レベルの操作です)。また、タグは、身元を確認するために暗号的に PGP 署名することができます (Git の動作の性質により、その署名は、関連するリビジョン、その履歴、およびツリーの有効性も確認します)。

したがって、基本的に「リポジトリ構造」はありません。プロジェクト構造のみがあります(つまりtrunk、 、ブランチ、またはSVNリポジトリのタグにあるもの)

于 2012-10-30T15:20:50.193 に答える