異なるレベルの複数のREADMEファイルを含む深いディレクトリ構造があります。例えば:追加。無視されていても.gitフォルダを持つサブディレクトリでは失敗します
gitignoretest/
|-- 00README
|-- dir1
| |-- 00README
| |-- dir1
| | |-- 00README
| | |-- dir1
| | |-- dir2
| | |-- dir3
| | |-- file1
| | `-- file2
| |-- dir2
| | |-- 00README
| | |-- dir1
| | |-- dir2
| | |-- dir3
| | |-- file1
| | `-- file2
| |-- dir3
| | |-- 00README
| | |-- dir1
| | |-- dir2
| | |-- dir3
| | |-- file1
| | `-- file2
| |-- file1
| `-- file2
|-- dir3
| |-- 00README
| |-- dir1
| | |-- 00README
| | |-- dir1
| | | |-- 00README
| | | |-- dir1
| | | |-- dir2
| | | |-- dir3
| | | |-- file1
| | | `-- file2
| | |-- dir2
| | | |-- 00README
| | | |-- dir1
| | | |-- dir2
| | | |-- dir3
| | | |-- file1
| | | `-- file2
...
...
我々は唯一のバージョン00README
ファイルにしたいです。我々は成功したが、実際のシナリオでは、サブディレクトリの一つは、自分の.git
のディレクトリを含むいくつかのパッケージを持っているconda
インストールされthis.gitignore
.gitignore
# Ignore everything
*
# But not these files...
!.gitignore
!00README
# etc...
# ...even if they are in subdirectories
!*/
でこれをテストしました。私はgit add .
を行うと、それはメッセージで失敗します。
fatal: Not a git repository: Applications/conda/lib/STAR-Fusion/STAR-Fusion.wiki/../.git/modules/STAR-Fusion.wiki
本当のシナリオは、../TopLevel/.gitignore
と../TopLevel/Applications/...
です。ここで私が試したものは以下のとおりです。
../TopLevel/.gitignore
# Ignore everything
*
/Applications/conda/**/*
/Applications/miniconda3/**/*
/Applications/newconda/**/*
Applications/conda/**/*
Applications/miniconda3/**/*
Applications/newconda/**/*
/**/.git
**/.git
/**/.git/**
**/.git/**
# But not these files...
!.gitignore
!00README.md
!USE_APPS
# etc...
# ...even if they are in subdirectories
!*/
しかし、マークを打つませんが。
EDITは@VonCで述べたように.git
フォルダと「untracking」サブディレクトリの問題に対処するために、私はgitリポジトリの完全新鮮な創造を提示します。注:リモートとして追加されるリポジトリは、新しく作成された--bare
リポジトリです。あなたが1つのリポジトリとして、すべてのツリー構造を検討したい場合
[email protected]:/home/.../TopLevel$ rmdir .git
[email protected]:/home/.../TopLevel$ git init
Initialized empty Git repository in /home/.../TopLevel/.git/
[email protected]:/home/.../TopLevel$ git remote add origin [email protected]:path/repo.git
[email protected]:/home/.../TopLevel$ git status
# On branch master
#
# Initial commit
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# .gitignore
# 00README.md
# Applications/
# InstallationPackages/
# USE_APPS
# gitignoretest/
nothing added to commit but untracked files present (use "git add" to track)
[email protected]:/home/.../TopLevel$ git add .
fatal: Not a git repository: Applications/conda/lib/STAR-Fusion/STAR-Fusion.wiki/../.git/modules/STAR-Fusion.wiki
'git add .'の代わりに' git add --all'を試しましたか?後者は最初のコミットだけです。 – mickdev
さて、これは最初のコミットでした:)しかし、私はちょうど 'git add --all'を試して同じエラーを受けました:( – abalter
私は...' rm -fr .git'で設定されたgitをすべて削除しようとしましたか?そして、 'git init'をもう一度' git add 'してもらえますか? – mickdev