[解決済み] 特定のリビジョン/チェンジセットでgitリポジトリをクローンする方法は?
2022-03-22 10:34:19
質問
Mercurialで通常行うような、特定のリビジョンでgitリポジトリをクローンするにはどうすればよいですか。
hg clone -r 3 /path/to/repository
解決方法は?
アップデイト2
以降
Git 2.5.0
を使用すると、サーバー側で以下のような機能を有効にすることができます。
uploadpack.allowReachableSHA1InWant
ここでは
GitHubの機能リクエスト
と
この機能を有効にする GitHub のコミット
. Git サーバーの中には、このオプションをデフォルトで有効にするものがあることに注意しましょう。
バージョン5.5以上
. こちらをご覧ください
Stackexchangeでの回答
は、設定オプションを有効にする方法の一例です。
アップデイト1
Gitのバージョンについて
1.7 < v < 2.5
で説明されているように、git clone と git reset を使用します。
Vaibhav Bajpaiの回答
もし、リポジトリ全体を取得したくないのであれば、おそらく
clone
. fetch を使って、取り出したいブランチを選択することができます。私は hg の専門家ではありませんので
-r
が、gitではこのようなことができます。
# make a new blank repository in the current directory
git init
# add a remote
git remote add origin url://to/source/repository
# fetch a commit (or branch or tag) of interest
# Note: the full history up to this commit will be retrieved unless
# you limit it with '--depth=...' or '--shallow-since=...'
git fetch origin <sha1-of-commit-of-interest>
# reset this repository's master branch to the commit of interest
git reset --hard FETCH_HEAD
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] コミット前に 'git add' を取り消すにはどうすればよいですか?
-
[解決済み] リモートのGitブランチをチェックアウトするには?
-
[解決済み] ファイルをリセットしたり、特定のリビジョンに戻したりするにはどうすればよいですか?
-
[解決済み] Git リポジトリでのマージの衝突を解決するには?
-
[解決済み] Git リポジトリを特定のフォルダにクローンする方法は?
-
[解決済み】"git pull" でローカルファイルを強制的に上書きするには?
-
[解決済み】Git リポジトリに空のディレクトリを追加するには?
-
[解決済み】ローカルのGitブランチの名前を変更するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Git, fatal: リモートエンドが予期せずハングアップしました。
-
[解決済み】ファイルのアンリンクに失敗しました。もう一度試してみるべきですか?
-
[解決済み】git-mergeの-dry-runオプションはありますか?
-
[解決済み】git push >> fatal: 設定されたプッシュ先がありません。
-
git commits with an error: 更新が拒否されました。現在のブランチの先端が、このブランチより後ろにあるためです。
-
[解決済み] .gitignore と "以下の追跡されていない作業ツリーファイルはチェックアウトによって上書きされるでしょう"
-
[解決済み] リモートブランチにプッシュできない、ブランチに解決できない
-
[解決済み】リモートリポジトリの特定のバージョンをGitでクローンする。
-
[解決済み] 浅いgitサブモジュールの作り方は?
-
[解決済み】リモート Git リポジトリから特定のコミットを取得する