私の。gitignoreファイルは無視され、無視されるべきファイルはまだ表示されています。
user@Host ~/workdir % git status
# On branch master
# Changed but not updated:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: .htaccess
# modified: application/controllers/statistics.php
#
no changes added to commit (use "git add" and/or "git commit -a")
user@Host ~/workdir % cat .gitignore
.htaccess
application/config/config.php
application/config/database.php
user@Host ~/workdir %
ファイルはバージョン管理されていますが、賢明な変更を加えてプッシュしたくありません。 git rm ...はオプションではありません。ファイルは(ファイル内の他の設定と共に)バージョン管理されている必要があるためです。このファイルに自分の変更をプッシュしたくありません。
Gitでファイルを無視しても、Pushしないわけではありません。 バージョン管理しないことを意味します。次にプッシュしたくない場合は、ローカルマシン用のものを含むローカルブランチを作成し、必要な変更をブランチにマージして、リモートにプッシュすることをお勧めします。
あなたはすでにあなたのファイルをadd
edし、今それらを無視しようとしていると思います。
同じ問題がありました:リポジトリごとに異なる.htaccessファイルが必要でしたが、htaccessファイルがすでにリポジトリに追加されていたため、できませんでした。それは今働いています、私は.htaccessファイルをgit pushせずにどのバージョンからでも変更できます。 Marcは、「無視できるようにするには、まず削除する必要があります。これはgit rmを使用して実行できます」と言ったところです。
私はこの順序で進みました:
これは明らかにあなたの.htaccessファイルを削除します
.htaccessに加えた変更はプッシュされなくなります。難しい部分は次のステップの順序です...
これが明確であることを願って
後 anybugの手順はここに記載されています 私のgitはまだ.htaccessを追跡していて、これが役立ちました:
git update-index --assume-unchanged .htaccess
元に戻すには:
git update-index --no-assume-unchanged .htaccess
あなたがしたいので:
.htaccess
をGitリポジトリに保持(git rm
なし)フィルタードライバー を使用します。
.htaccess
を完成させます.htaccess
を削除しますその後、スマッジスクリプトが実行する暗号化ファイルをバージョン管理できます。
暗号化された機密データを、プッシュしない特別なブランチでバージョン管理できます。
そのファイルを何らかの方法でプッシュしたとしても、ワークステーションのみがそのファイルを復号化するために必要な秘密鍵を持っているため、損傷は限定されます。
以下が.gitignore
ファイルの内容であるとします。ここで、.htaccess
はプロジェクトのルートディレクトリにあります。
/.htaccess
application/config/config.php
application/config/database.php
以下のコマンドを実行して、.htaccess
、config.php
、database.php
ファイルを無視します。
[email protected]:work-dir$ git update-index --assume-unchanged .htaccess
[email protected]:work-dir$ git update-index --assume-unchanged application/config/config.php
[email protected]:work-dir$ git update-index --assume-unchanged application/config/database.php
再度追跡を開始する場合:
[email protected]:work-dir$ git update-index --no-assume-unchanged path/to/file
例えば.
[email protected]:work-dir$ git update-index --no-assume-unchanged .htaccess
.htaccess
ファイルはすでにバージョン管理に追加されています。無視する前に、まず削除する必要があります。これは git rm を使用して行うことができます
私はいつもこうしています。私は私のリポジトリの設定ファイルから始めて、そこにそれらを入れたくないと決定しました。
次のコマンドを使用して、リポジトリから何かを削除できます
git rm --cached <<filename>>
これは何日も私を悩ませた。 .htaccess
ファイルはすでにバージョン管理下にあり、変更されています。