2013-03-06 22 views
8

私はgitの初心者です.Gitignoreへの変更はrepoに対して「遡及的に」処理するのではなく、将来のgit add *コマンドなどに影響を与えます。ファイルがレポに入ったら、手動で削除する必要があります。gitリポジトリを再起動する方法

この時点で、私はこのリポジトリを完全に終了させて​​から、やり直してください(設定を保存するなど)。

これは簡単に可能ですか、それとも大きな問題を引き起こしますか?バックアップしてから.gitフォルダを削除してから新しく起動できますか?

また、他の初心者のためにgitで開始するには、この動画を表示することをおすすめします。 gitの使い方ではなく、gitの内部的な動作について説明しています。 4歳以上の人はgitというタイトルです。 http://blip.tv/open-source-developers-conference/git-for-ages-4-and-up-4460524

解像度:

私は彼らの入力と指導のためのみんなに感謝したいと思います。

私は.gitディレクトリを削除しようとしました - そして再起動してください。私はどのように - 私はそれを開始しようとしたとき - それは歴史の完全な意識を持って起動した - と少し前にすべての前のコミットと追跡を含めるために再作成されます。

私はそれだけを残しました - そして再編成とリストラと清掃を約束しました。不要なプロジェクトやフォルダなどを削除し、フォルダ構造を変更することで、追跡したくないファイルを削除することができました。

私は効果的にすべてのフォルダなどを移動し、これをコミットすると、gitは移動/削除されたファイルの追跡を削除しました。しかし、私が今持っていた.gitignoreのため、移動したフォルダ内のファイルを取得したり追跡したりすることはありませんでした。

私がやっていたことの多くは、まったく新しいgit repoを開始する準備だった。遅くなってしまった - 私が追跡したくなかったもののほとんどは、レポのために効果的に削除されていた。それで何が起こったのかを確認し、さらに調整を加えました。今はすべて問題ありません。

もう一度 - ありがとうございます。私はgitが大好き!

+1

git init git add . git commit -m "first time load" 

rm -rf .git 

をLinuxまたはMacの場合をしますかソース管理からのファイル? – niculare

+0

ディープフォルダーには多くのファイルがネストされています。 – JimH

答えて

6

バックアップができます - そして、.gitフォルダを削除 - 、新鮮なスタート?

はい。これがすべてです。

いくつかの本当にエキゾチックなセットアップは、作業ディレクトリの外.gitフォルダを持っているかもしれません。それ以外の場合は、.gitフォルダにはwrt gitがあるすべての情報が格納されます。それを削除すると、すべての履歴、git-metadataなどが削除されます。

編集:質問全体を読んでいない可能性のあるユーザー:警告:これでgitの履歴がすべて削除されます

+0

ありがとうございました。私はあなたが単にこのフォルダを削除することができたと思ったが、大きな問題であることを示した別の投稿を見た。 – JimH

3

これを処理する最適な方法は、git archiveコマンドを使用することです。これにより、ツリーのバージョン管理されていないバージョンがtarアーカイブにエクスポートされます。あなたは、リポジトリ内の以下をエクスポートして、実行したいのですが、あなたのブランチを選択:

git archive master | tar -x -C ~/target/directory 

その後、きれいにリポジトリフォルダを削除してから新たに開始するには、あなたのアーカイブを抽出することができます。最後に、次のように抽出されたフォルダに新しいリポジトリを作成できます。

git init 
+0

ありがとうございました。私はそれに乗るだろう! – JimH

9

私はいつもこれを行います。作業ディレクトリに入ったし、私はあなただけ取り除くのアイデアのようにしない理由あなたが必要とするすべての

+0

ご協力いただきありがとうございます。それは有り難いです! – JimH

+1

これは動作していません – randseed1724

関連する問題