忽略 git 目录

3
我们正在一些项目中使用Erlang和ChicagoBoss。ChicagoBoss是一个框架。当我们创建一个project1时,它会变成这样:
.
├── cb_admin
├── ChicagoBoss
├── ebin
├── project1
└── vagrant

我们只对project1执行了git init。稍后完成project1之后,我们又使用git init创建了另一个project2
├── cb_admin
├── ChicagoBoss
├── ebin
├── project1
├── project2
└── vagrant

有时候,当我在 project1 上工作时,git status 会显示以下输出:
$ git status
On branch develop
Your branch is up-to-date with 'origin/develop'.
Untracked files:
  (use "git add <file>..." to include in what will be committed)

    ../project2/

nothing added to commit but untracked files present (use "git add" to track)

尽管在“project2”中没有任何内容可以提交,为什么还会出现未跟踪的文件?不过,为了验证,我进入了我的“project2”目录并运行了“git status”命令:
$ git status
On branch develop
Your branch is up-to-date with 'origin/develop'.
Untracked files:
  (use "git add <file>..." to include in what will be committed)

    ./

nothing added to commit but untracked files present (use "git add" to track)

因此,为了忽略仅本地的行,我运行了以下命令,但没有成功:
$ git update-index --assume-unchanged ./
Ignoring path gift_tax/

可以帮我翻译一下吗?
  • “./”在这里表示什么?
  • 我怎样才能仅在本地忽略它,而不影响远程目录中的更改?

你是在/project1文件夹上进行git init,还是在根目录上进行的呢?因为如果你在/project1文件夹上进行git init,它应该只包含该文件夹中的所有文件或文件夹。不像你的git状态消息,它说../project2/。所以我猜你是在根目录上进行的git init。 - Ary Wibowo
@AryWibowo - 哦,好的,可能是我们团队中的某个人在根目录上做了些什么。 - trex
@AryWibowo - 你知道那里出现的./是什么吗? - trex
1个回答

3

../project2/(来自项目1状态)和./(在项目2状态下)与在根文件夹上进行的git init一致(而不是在project1或project2上)。

哦,好的,那么我们团队中的某个人可能已经在根文件夹上完成了这个操作。

寻找一个.git文件夹。它可能在 / 中,而不是在project1project2中。

你知道那里出现的./是什么意思吗?

因为project2没有被添加到位于/的版本库中。


可能的解决方案(警告:这将丢失当前的历史记录)

  • 删除/.git文件夹,
  • project1project2中执行git init,
  • 在每个项目中添加并提交。

明白为什么它出现了!删除后不再有历史记录,这在我们的情况下可以忽略。谢谢。 - trex

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接