gitリポジトリ内の特定のタグまでクローンを作成し、そのタグに続く履歴やコミットを含めないようにするにはどうすればよいですか?

decuser

私は何十、何十もの同じような言葉の質問を読みましたが、どれも私のニーズに合わないようでした。多くのタグとコミットを含むリポジトリがあります。数年前のコミット/タグに戻り、そのタグとそのタグに至るまでの履歴を複製したいと思います。

簡略化した表現は次のとおりです。

A - B - C - D - H - I - ... ZZZ
  \            /     \     /
   E - F - G          J - K

リポジトリのクローンを作成したいのですが、Hをコミットするまでしかありません。その結果、リポジトリは次のように表示されます。

A - B - C - D - H
  \            / 
   E - F - G

私は自分が計画している行動の破壊的な性質を認識しています。私はそれをいじる前に既存のリポジトリをバックアップします。結果のクローンに私以降を含めないのは間違いなく私の意図です。

larsks

必要以上の履歴を複製する必要があります。ただし、取得したら、履歴を任意のタグに切り捨てることができます。リポジトリのクローンを作成することから始めます。

git clone --no-tags someurl myrepo

次に、リポジトリのヘッドを選択した参照にリセットします。

cd myrepo
git reset --hard ref-of-interest

そして、あなたはあなたが望むものを持っているべきです。

ここでは明示的にでクローンを作成--no-tagsしているため、タグはローカルで使用できないことに注意してください履歴を特定のタグに切り捨てたい場合は--no-tags、(a)オプションなしで複製するか、(b)git reset --hardタグ名ではなく明示的なコミットIDに複製することができます

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

Related 関連記事

ホットタグ

アーカイブ