私はgitの初心者ですが、.gitignoreへの変更はレポに対して「遡及的に」処理されず、将来の「git add *」コマンドなどに影響を与えることに気づきました。ファイルがリポジトリに配置されたら、手動で削除する必要があります。
この時点で、このリポジトリを完全に削除して、最初からやり直します(構成の保存など)。
これは簡単に可能ですか、それとも大きな問題を引き起こしますか?バックアップしてから.gitフォルダーを削除して、最初からやり直すことはできますか?
また、gitを始めたばかりの他の初心者には、このビデオをご覧になることをお勧めします。 gitの使い方ではなく、内部でgitがどのように機能するかを説明しているので、目を見張るものがあります。 4歳以上向けのgitというタイトルです。 http://blip.tv/open-source-developers-conference/git-for-ages-4-and-up-4460524
解決策:
皆様のご意見、ご指導に感謝申し上げます。
.gitディレクトリを削除して再起動しようとしました。方法はわかりませんが、最初からやり直そうとすると、その履歴を完全に認識して起動し、要するに、以前のすべてのコミットと追跡を含めるように再作成されました。
私はそれを放っておいた-そして再編成とリストラと掃除に着手した。フォルダ構造を変更すると(不要なプロジェクトやフォルダなどが削除されます)、その過程で、追跡したくない(ただしツリーに存在させたい)ファイルを削除するために何ができるかがわかりました。
私はすべてのフォルダーなどを効果的に移動し、これをコミットするときに-gitは移動/削除されたファイルの追跡を削除しました。しかし、私が今持っていた.gitignoreのために、移動されたフォルダー内のファイルを取得または追跡しませんでした。
私がやっていたことの多くは、まったく新しいgitリポジトリを開始する準備でした。プロセスの後半で、私は夜明けをしませんでした-追跡したくないもののほとんどは、レポのために効果的に削除されました。それで、起こったことを取り、さらにいくつかの調整を行いました。そして今はすべて問題ありません。
もう一度-ありがとう。私はgitが大好きです!
バックアップしてから.gitフォルダーを削除して、最初からやり直すことはできますか?
はい。これですべてです。
一部の非常にエキゾチックなセットアップでは、作業ディレクトリの外に.gitフォルダーがある場合があります。ただし、それ以外の場合、.gitフォルダーにはwrtgitにあるすべての情報が含まれます。これを削除すると、すべての履歴、git-metadataなどが削除されます。
リモコンがある場合、同じ.gitフォルダーに保存されているため、リモコンへのリンクは失われます。リモート自体、たとえばGitlabサーバーは、明らかになくなっていません。そのため、クリーンな環境に同じリモートを再度追加すると、履歴が再表示され、マージの競合が発生する可能性があります。
編集:質問全体を読んでいない可能性がある人のために:警告:これはすべてのgit履歴を削除します。
私はいつもこれをします。作業ディレクトリに入り、LinuxまたはMacの場合は
rm -rf .git
それから私はします
git init
git add .
git commit -m "first time load"
必要なのはそれだけです
これを処理するための最良の戦略は、git archive
コマンドを使用することです。これにより、バージョン管理されていないバージョンのツリーがtarアーカイブにエクスポートされます。エクスポートするブランチを選択し、リポジトリ内で以下を実行します。
git archive master | tar -x -C ~/target/directory
その後、リポジトリフォルダを完全に削除してから、アーカイブを抽出して新たに開始できます。最後に、抽出したフォルダーに次のように新しいリポジトリを作成できます。
git init