検索

ホームページ  >  に質問  >  本文

github - git ファイルまたはディレクトリをフィルタリングする方法

ローカルで構築した git は github リポジトリに関連付けられ、サーバーは github からコンテンツをプルします。
ローカルとサーバー上の構成が異なるため、送信時に構成ファイルを除外したいと思います。
次に、構成ファイルのディレクトリを含む .gitignore ファイルを作成しました。この方法は機能しませんでした。ローカルの変更は github にプッシュされます。サーバーが github からプルするときも、構成ファイル ディレクトリ内の変更はフィルタリングされずにプルされます。

2 番目の方法は、構成ファイルのディレクトリをローカル .gitinfoexclude に直接追加することですが、それでもフィルタリングに失敗します。何が起こっているのでしょうか?以下は、.gitignore がサーバーとローカルの両方に追加されるルールです。2 番目のルールはローカルでのみ追加されます。

PHP中文网PHP中文网2799日前889

全員に返信(3)返信します

  • 世界只因有你

    世界只因有你2017-05-02 09:52:48

    まず第一に、投稿者は、ローカル ファイルがステージング領域に追加されると、自動的に .gitignore ファイルを読み取り、その設定に従って対応するファイルをフィルタリングすることを明確にする必要があります。したがって、作成者は、.gitignore ファイルをリモートにプッシュした後ではなく、一時記憶領域に追加する前に、ファイルが有効かどうかを判断する必要があります。
    git status -s コマンドを使用して、フィルタリングするファイルがフィルタリングされているかどうかを確認できます。フィルタリングされていない場合は、それらのファイルが以前にステージング領域にあったことが考えられます。< gitignore ファイルは、以前にステージング領域にあったファイルをフィルタリングできません。この場合、次のコマンドを使用できます。 リーリー .gitignore文件,根据其中的设置过滤相应的文件。所以楼主应该在添加到暂存区之前,就判断.gitignore文件是否生效,而不是推送到远程了才判断。
    你可以通过git status -s命令查看那些想过滤的文件是否被过滤掉,如果没有,那么很可能是因为那些文件之前已经在暂存区,.gitignore文件是无法过滤那些之前在暂存区已有的文件的,这时你可以使用下面的命令:

    git rm --cached files-you-want-to-ignore

    这时你再用git status -s現時点では、git status -s コマンドを使用して、実際に無視されているかどうかを確認し、その後の追加、コミット、プッシュ操作を実行できます。

    返事
    0
  • 阿神

    阿神2017-05-02 09:52:48

    ファイルをフィルタリングするメソッドが指定されています。
    これらのファイルがウェアハウスに追加されている可能性があります。ウェアハウス内のファイルを追跡したくない場合は、次のコマンドに従ってください
    追跡を無視します

    リーリー

    追跡を再開

    リーリー

    返事
    0
  • 我想大声告诉你

    我想大声告诉你2017-05-02 09:52:48

    .gitignore 规则没生效 要先git rm -r --cached

    です

    返事
    0
  • キャンセル返事