146

私はgitで初めて作業しています。ブランチを github にプッシュしたところ、すべてのライブラリとドキュメントが github にプッシュされました。gitignore コマンドを使用して同じ間違いを避けるにはどうすればよいですか。

4

7 に答える 7

188

あなたの言ったことに基づいて、これらのファイルは削除したくないライブラリ/ドキュメントですが、プッシュしたくないgithub. プロジェクトがフォルダーyour_projectと doc ディレクトリにあるとしますyour_project/doc

  1. プロジェクト ディレクトリから削除します (実際には削除しません)。 git rm --cached doc/*
  2. をまだ持っていない場合.gitignoreは、プロジェクト フォルダー内に作成できます: project/.gitignore.
  3. .gitignoredoc/*に入れる
  4. コミットするファイルをステージングします。git add project/.gitignore
  5. コミット: git commit -m "message".
  6. 変更を にプッシュしますgithub
于 2012-09-19T20:19:01.510 に答える
57

.gitignore ファイルがない場合は、まず次を使用します。

touch .gitignore

次に、次のコマンドを使用して gitignore ファイルに行を追加します。

echo 'application/cache' >> .gitignore

改行に注意

于 2016-10-24T11:31:42.797 に答える
15

gitignoreはgitの規則です。の名前でファイルを設定する.gitignore と、そのディレクトリ内のファイルと、ファイルに含まれるパターンに一致するより深いディレクトリが無視されます。最も一般的な使用法は、このような1つのファイルをトップレベルに配置することです。ただし、ディレクトリ構造のより深いところに他のパターンを追加して、さらに多くのパターンを無視したり、そのディレクトリ以降のより深いパターンでそれらを無視するのをやめたりすることができます。

同様に、。で始まるパターンを指定することにより、より深い構造または特定のサブセット内の特定のファイルを「無視しない」ことができます(つまり、*。logを無視しますが、important.logを追跡したい場合)!。例えば:

*.log !important.log

すべてのログファイルを無視しますが、important.logという名前のファイルを追跡します

無視する予定のファイルを追跡している場合は、それらを削除し、パターンを.gitignoreファイルに追加して、すべての変更を追加します

# delete files that should be ignored, or untrack them with 
# git rm --cached <file list or pattern>

# stage all the changes git commit
git add -A 

今後、リポジトリではそれらが追跡されなくなります。

あなたがあなたの歴史をきれいにしたいならば、あなたはすることができます

# if you want to correct the last 10 commits
git rebase -i --preserve-merges HEAD~10 

次に、各コミットにeまたはでマークを付けeditます。計画を保存します。これで、gitは、eでマークされた各コミットで停止する履歴を再生します。ここで、不要なファイルを削除し、完了するgit add -Aまで削除しますgit rebase --continue。あなたの歴史はきれいになります。プッシュを強制する必要があり、まだプッシュしていないものをリベースする必要があるため、必ず同僚に伝えてください。

于 2012-09-19T22:15:23.667 に答える
8

という名前の git ルート ディレクトリにファイルがあります.gitignore。コマンドではなくファイルです。無視したいファイルの名前を挿入するだけで、自動的に無視されます。たとえば、 で終わるすべての emacs 自動保存ファイルを無視する場合は~、次の行を追加できます。

*~

ブランチから不要なファイルを削除する場合は、「作業ツリーに存在しないファイルを削除するgit add -A」を使用できます。

注: 私が「git ルート ディレクトリ」と呼んでいるものはgit init、最初に使用したディレクトリです。.gitまた、ディレクトリを見つけることができる場所でもあります。

于 2012-09-19T19:16:52.787 に答える
1

私のMacでこのファイルを見つけました.gitignore_global ..それは私のホームディレクトリに隠されていましたので、ls -altrそれを見るために実行してください.

gitに無視させたいEclipseファイルを追加しました。内容は次のようになります。

 *~
.DS_Store
.project
.settings
.classpath
.metadata
于 2014-07-22T16:05:47.530 に答える