[解決済み] filter-branch --tree-filter の後に refs/original/heads/master を git repo から削除しますか?
質問
こちらで質問されていることと同じ質問をさせていただきました。 ルートディレクトリに新しいgitリポジトリを作成し、サブディレクトリにある既存のリポジトリをサブジェクト化する。
こちらの回答に従いました。 ルートディレクトリに新しい git リポジトリを作成して、サブディレクトリにある既存のリポジトリをサブジェクト化する。
今すぐ
gitk --all
は、2つの歴史を示しています。1つは現在の
master
という名前のものと
original/refs/heads/master
.
この2つ目の履歴が何なのか、また、レポから削除する方法がわかりません。私のリポジトリに2つの履歴は必要ありません。
どうすればよいですか?
自分を再生させること。
mkdir -p project-root/path/to/module
cd project-root/path/to/module
mkdir dir1 dir2 dir3
for dir in * ; do touch $dir/source-file-$dir.py ; done
git init
git add .
git commit -m 'Initial commit'
これで、元の投稿者の問題が解決しました。上のリンク先の回答を使って、git リポジトリのルートを project-root に移動してみましょう。
git filter-branch --tree-filter 'mkdir -p path/to/module ; git mv dir1 dir2 dir3 path/to/module' HEAD
rm -rf path
cd ../../../ # Now PWD is project-root
mv path/to/module/.git .
git reset --hard
さて、現在の私の問題点をご覧ください。
gitk --all &
git show-ref
を取り除くにはどうしたらよいですか?
refs/original/heads/master
と関連するすべての履歴を表示しますか?
解決方法は?
refs/original/*
は、万が一フィルタブランチを失敗したときのバックアップとして用意されています。信じてください、これは
本当に
いいアイデアですね。
結果を点検し、欲しいものが手に入ったと確信したら、バックアップしたRefを削除することができます。
git update-ref -d refs/original/refs/heads/master
または、多くのレフにこれを行ったので、それをすべて消去したい場合。
git for-each-ref --format="%(refname)" refs/original/ | xargs -n 1 git update-ref -d
(これはfilter-branchのmanpageから直接引用したものです)。
これはあなたには当てはまりませんが、他の人がこれを見つけるかもしれません。もし、フィルターブランチを
削除
のコンテンツが大きなディスクスペースを取っている場合は、さらに
git reflog expire --expire=now --all
と
git gc --prune=now
を使って、リブログを失効させ、今は使われていないオブジェクトを削除してください。(警告: 完全に、完全に、元に戻せません。 実行する前によく確認してください)。
関連
-
[解決済み] 短いGitバージョンのハッシュを取得する
-
[解決済み] 現在のGit作業ツリーからローカル(未追跡)ファイルを削除する方法
-
[解決済み] Git でブランチからコミットを削除する
-
[解決済み] ローカルファイルシステムからファイルを削除せずに、Git リポジトリからファイルを削除する
-
[解決済み] Gitブランチをmasterにマージする最も良い(そして最も安全な)方法は何ですか?
-
[解決済み] Git を使って前のコミットから分岐させる
-
[解決済み] Git のコミットからファイルを削除する
-
[解決済み] 現在のGitブランチをmasterブランチにする
-
[解決済み] Gitのプッシュを正しく強制する方法は?
-
[解決済み] Git master の未段階/未コミットの変更からブランチを作成する
最新
-
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: マージ中に部分コミットができない
-
[解決済み】fatal: 有効なオブジェクト名ではない: 'master'
-
[解決済み】ERROR: Error cloning remote repo 'origin'.
-
Gitのプッシュでエラーが発生! [リモート拒否] master -> master (pre-receive hook declined) error: failed to push s...
-
git commit リモートエラー [rejected] master -> master (フェッチファースト)
-
[解決済み] git stashを元に戻す
-
[解決済み] ある特定のコミットのコミット作者を変更する方法は?
-
[解決済み】Git、以前のコミットのユーザー名とメールを書き換える
-
[解決済み】git リポジトリから古い履歴を削除する方法は?
-
[解決済み] Git 過去のコミットからファイルを削除するには?