修正:Gitignoreが機能しない



問題を排除するために楽器を試してください

GitHubは、コードコラボレーションとリポジトリ共有の分野における主要なパイオニアとして浮上しています。 GitHubは主に、ユーザーが分散バージョン管理とSCM(ソースコード管理)を制御できるようにするバージョン管理ソフトウェアです。このプラットフォームは、世界中の主要な企業や企業で使用されています。



.gitignore



このようなプラットフォームには、技術と問題があります。コーダーが経験した特定の問題の1つは、.gitignoreがGitHubで機能していなかったことです。プラットフォームは.gitignoreを無視するか、部分的に機能しました。それぞれのケースは完全に異なるシナリオであるため、問題はそれぞれのケースで少し異なる可能性があることに注意するのは興味深いことです。ただし、リストするソリューションには、普遍的に機能する修正が含まれています。



.gitignoreとは何ですか?

Git(またはGitHub)は、作業ディレクトリ内のすべてのファイルを確認します。これは、各ファイルを次の3つのいずれかとして特徴付けます。

  • 追跡: これらのファイルは、以前にコミットまたはステージングされています。
  • 追跡されていない: これらは、以前にステージングまたはコミットされていないファイルです。
  • 無視されます: これらは、ユーザー自身がGitに完全に無視するように指示したファイルです。

これらの無視されたファイルはシナリオごとに異なる可能性があり、ほとんどがマシンで生成されたファイルまたはビルドアーティファクトです。これは一般的な方法です。自分のニーズに応じて、他のさまざまなファイルを無視している可能性があります。これらのファイルの例は次のとおりです。

  • コンパイルされたコード: これらのファイルの拡張子は通常、.class、.pyc、.ccpなどです。
  • 隠しシステムファイル: これらは、システムが操作のために使用するファイルですが、DS_StoreやThumbs.dbなどのプレーンビューからは非表示になっています。
  • 出力ディレクトリを構築します。 これらは主に/ bin、/ outなどのディレクトリです。
  • 依存関係キャッシュ: これらのファイルは、/ nodeまたは/ packagesモジュールの内容である可能性があります。
  • IDE構成ファイル: これらは、ほとんどがIDEソフトウェアによって作成または管理される構成ファイルです。
  • 実行時に生成されるファイル: 実行時にファイルを作成するプログラムがいくつかあります。このようなコードのいずれかが実行されると、実行時に作業フォルダーにいくつかのファイルが生成され、Gitでは無視される可能性があります。

無視したいファイルは、.gitignoreという名前の特別なファイルで追跡されます。このファイルは、ほとんどの場合、作業リポジトリのルートでチェックされます。この件に関するGitHubの公式ドキュメントによると、特定のgitignoreコマンドはありません。代わりに、無視したいファイルを手動で編集する必要があります。 .gitignoreファイルには、作業リポジトリ内のファイル名と照合されるパターンが含まれており、これらは特定のファイルを無視するかどうかを決定するために使用されます。



.gitignoreが機能しない原因は何ですか?

.gitignore機能は完全に機能している可能性がありますが、正しく構成されていない可能性があります。すべての調査で、モジュールは実際に機能しているという結論に達しました。コーダーがこの機能を使用できない理由は、主に、ファイルが適切に構成されていないか、基になるコードで満たされていない条件があるためです。

ここにあなたのために働くかもしれないいくつかの解決策があります。各ソリューションがお客様のケースに適用できない可能性があるため、初期条件が満たされていない場合は、必ず次のソリューションに切り替えてください。

解決策1:.gitignoreファイルを確認する

.gitignoreファイルが間違った形式で作成されていることがわかった興味深いケースが発生しました。この特定の問題は、ユーザーがWindowsOSのメモ帳のデフォルトアプリケーションを使用してファイルを作成したときに発生しました。 Notepadは、ANSI形式ではなくUnicodeでファイルを書き込むことがわかりました。このソリューションでは、メモ帳の変更を.gitignoreの正しい形式で保存し、これで問題が解決するかどうかを確認します。

注意: メモ帳を使用して新しいファイルを作成するときは、ファイルから.txtの拡張子を削除する必要があります。

  1. メモ帳で新しいテキストドキュメントにコードまたは変更を書き込んだ後、をクリックします。 ファイル 選択します 名前を付けて保存

名前を付けて保存–メモ帳

  1. 今前に エンコーディング 、 選択する ANSI 。次に、.txtのファイル拡張子を削除し、「」という名前でファイルを保存します。 .gitignore ’。正しいディレクトリを選択して保存します。

エンコーディングタイプとしてANSIを選択する

  1. 次に、ディレクトリに移動して、正しいファイルが作成されているかどうかを確認します。次に、Gitでもう一度テストし、無視機能が期待どおりに機能しているかどうかを確認します。

開発者は、Windowsでデフォルトのメモ帳を使用しないようにする必要があります。代わりに、適切な「プログラマー」メモ帳を使用する必要があります。いくつかの例が含まれます メモ帳++ など。これらでは、このような問題は発生しません。

注意: ファイルがすでにUNICODE形式で保存されている場合、ファイルをGitで正しく検出するには、内容をANSI形式で適切に保存する必要があります。

解決策2:無視しようとしているファイルを確認する

.gitignoreが機能するもう1つの条件は、ファイルが まだリポジトリの一部 。これは非常に重要な側面であり、これが真実であるかのように、ファイルはそのまま無視されません。 すでに追加されています リポジトリに。名前またはルールを.gitignoreファイルに配置しても、Gitはそれを無視できません。つまり、本質的に、Gitは無視するだけです 追跡されていないファイル

構造(リポジトリ)を調べて、現在無視しようとしているファイルがリポジトリに追加されていないことを確認する必要があります。そうである場合は、リポジトリからファイルを削除し、最新の変更がコミットされた後、その名前を.gitignoreに追加する必要があります(ファイルの内容をコピーし、削除した後、別の名前で複製することもできます) 。

解決策3:リポジトリへのファイルの再追加

.gitignoreにすでにルールを追加しているが、無視したいファイルがすでに追加されている場合は、ファイルを再度追加できます。追加とは、Gitのインデックスからすべてを削除してから、すべてをリポジトリに再度追加することを意味します。ファイルを最初から再度追加する場合、.gitignoreで追加したルールが考慮され、正しいファイルのみが追加されます。

注意: このソリューションを実行する前に、コードを別の場所にもバックアップする必要があります。万が一に備えてバックアップをとっておくとよいでしょう。

  1. 次のコマンドを実行します。これにより、ファイルへのパスがステージング解除され、再帰的にgitインデックスから削除されます。
git rm -r--cached。
  1. これを実行した後、次のコマンドを実行する必要があります。これにより、すべてのファイルが追加され、.gitignoreにルールがあるため、正しいファイルのみが更新されます。
gitadd。
  1. 次に、以下のコードを使用して、すべてのファイルをインデックスにコミットします。
git commit -m'.gitignoreが機能しています '

次に、ファイルを調べて、問題が解決したかどうかを確認します。問題なく.gitignoreを再度使用できます。

読んだ4分