私はgit-unpack-objectsを.packファイルに作成しました。私が得たのは00からffまでのサブディレクトリがたくさんあり、SHA1ハッシュのような名前のタイルがたくさん含まれていましたが、その内容を表示しようとすると、私はいくつかの迷惑をかけることになります。今私はそれらのハッシュファイルから実際のソースファイルを取得する必要がありますか?git-unpack-objectsの後に実際のファイルを取得するにはどうすればよいですか?
答えて
.packファイルを新しくgit init
のリポジトリの.git/objects/pack/
ディレクトリに配置すると、git checkout -b somebranch ANYSHA1
になるはずです。例えば
:
# find a commit:
[email protected]:~/git% git rev-parse HEAD
6f5e880c68099b185e60b2492c75e506e16d8292
[email protected]:~/git% cd ..
# init:
[email protected]:~% git init bar
Initialized empty Git repository in /home/faux/bar/.git/
# add packs:
[email protected]:~% cp git/.git/objects/pack/* bar/.git/objects/pack
[email protected]:~% cd bar
# checkout:
[email protected]:~/bar% git checkout -b somebranch 6f5e880c68099b185e60b2492c75e506e16d8292
Switched to a new branch 'somebranch'
# done!
[email protected]:~/bar% ls
abspath.c
contrib
...
詳細な手順をありがとうございました。私は最後の1週間苦労していた。しかし今、私はファイルを入手することができます。リモートリポジトリにフェッチ/プッシュ/プルできるようになりますか?リモートリポジトリに接続するために.gitディレクトリに変更を加える必要がありますか?どのようにリモートリポジトリで利用できるブランチに切り替えることができますか?ファイルをコピーする必要はありますか?もう一度ありがとうございます。 – user917279
実際に私はgit initとgit reset -hardを試しましたが、git statusの後にファイルが削除されたと報告されました。しかし、あなたのアプローチはきれいに見えます。 – user917279
これで、 'git remote -f origin url:// to/remote/repository'にできるはずです。そうすれば' git remote update'は少しでもうれしくダウンロードされます(できれば!)、あなたは正常。 – FauxFaux
- 1. マスクの背後にある実際のURLを取得するにはどうすればよいですか?
- 2. WindowsでSDカードの実際のサイズを取得するにはどうすればよいですか?
- 3. ファイルをダウンロードする前にファイルのMIMEタイプを取得するにはどうすればよいですか?
- 4. Javaプログラムの実行可能ファイルを取得するにはどうすればよいですか?
- 5. 実行ファイルが存在するディレクトリを取得するにはどうすればよいですか?
- 6. インクルードファイルから、インクルードするファイルのファイル名を取得するにはどうすればよいですか?
- 7. リクエストURLを解析する際にURLラベルを取得するにはどうすればよいですか?
- 8. MacでPHPでファイルを実際に作成するにはどうすればよいですか?
- 9. Javaプログラム内でjarファイルを取得して実行するにはどうすればよいですか?
- 10. innerHTML.splitの後に配列のサイズを取得するにはどうすればよいですか?
- 11. リダイレクトが発生した場合、file_get_contentsの後に実際のURLを取得するにはどうすればよいですか?
- 12. TortoiseSVNでリポジトリにないファイルのリストを取得するにはどうすればよいですか?
- 13. データベースで最後に挿入された値を取得するにはどうすればよいですか?
- 14. Bazelによって実行されるコマンドを取得するにはどうすればいいですか?
- 15. 値を入力した後にセルの値を取得するにはどうすればよいですか?
- 16. XMLファイルのXSDエラーのファイル位置を取得するにはどうすればよいですか?
- 17. 同じJSファイルでJSファイルのURLを取得するにはどうすればよいですか?
- 18. インストールされている.msiファイルの名前を取得するにはどうすればよいですか?
- 19. フィールドをドロップダウンメニューからデータベースにアップロードして後で取得するにはどうすればよいですか?
- 20. ネットワークアプリケーションのライセンスを取得するにはどうすればよいですか?
- 21. カスタムオープングラフオブジェクトのカスタムプロパティを取得するにはどうすればよいですか?
- 22. リストのアドレスを取得するにはどうすればよいですか?
- 23. LinkedHashMapのkeyIteratorを取得するにはどうすればよいですか?
- 24. DynamicControlの値を取得するにはどうすればよいですか?
- 25. オーバーレイオブジェクトのイベントハンドラを取得するにはどうすればよいですか?
- 26. Java:org.w3c.dom.Nodeのxpathを取得するにはどうすればよいですか?
- 27. ユーザーグループのスピーカーを取得するにはどうすればよいですか?
- 28. デスクトップウィンドウのハンドルを取得するにはどうすればよいですか?
- 29. コンパニオンオブジェクトのScalaSigを取得するにはどうすればよいですか?
- 30. iframeのソースを取得するにはどうすればよいですか?
あなたは 'gitのアンパック-objects'を行う必要がありますか?なぜ 'git cat-file'だけではないのですか? – Borealid
.packファイルを使って直接作業しているのはなぜですか?完全なgitリポジトリで作業する場合は、標準のgitコマンド( "git checkout"、 "git show"など)を使用してファイルに簡単にアクセスできます。パックされたファイルはパックファイルを手作業で扱わなくてもgitによって抽出されます。 –
帯域幅の制限のため、私はgit-cloneを実行することができず、gitクローンは継続的に失敗し続けました。したがって、.packファイルと.idxファイルを取り出し、700MBファイルとして圧縮し、.packファイルと.idxファイルを取得しました。今はそれらの.packと.idxファイルからgitソースツリーを再作成したいと思っています。 – user917279