标签: git-status

git repo奇怪的问题?

我刚刚在我的Mac上升级到OSX Lion,我用git repo获得了一个奇怪的问题.我在版本控制下有我的.vim文件,其中一些插件配置为git子模块.升级后,我在git status我的.vim目录中运行了一个命令并得到以下信息:

fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain failed
fatal: git status --porcelain …
Run Code Online (Sandbox Code Playgroud)

git git-submodules git-status

5
推荐指数
1
解决办法
3087
查看次数

如何在特定路径中为特定错误列出特定类型的所有已更改文件的git列表?

我想知道如何使git列出所有已更改的文件

  • 特定类型(例如所有php文件)
  • 根据某个错误提交的 或者仍未提交
  • 并在特定的道路上

我将首先为我的问题列出一个示例情况.

说我更改了以下文件:

未提交的更改

/site/main.php
/site/main.html
/site/includes/lib.php
Run Code Online (Sandbox Code Playgroud)

提交3
提交消息:"Bug xyz:做了一些改动"

/site/main.php
/site/main.html
/site/main.js
/test/test.php
/test/test.html
Run Code Online (Sandbox Code Playgroud)

提交2
提交消息:"Bug xyz:做了一些更改"

/site/main.php
/site/main.html
/site/includes/include.php
Run Code Online (Sandbox Code Playgroud)

提交1
提交消息:"错误abc:请注意,这是另一个错误"

/site/login.php
Run Code Online (Sandbox Code Playgroud)

说我还在研究bug xyz.现在我需要一个列表,列出目前在网站目录中已经更改的所有php文件.所以我需要以下列表作为输出:

/site/main.php
/site/includes/lib.php
/site/includes/include.php
Run Code Online (Sandbox Code Playgroud)

什么命令可以做到这一点?

git git-log git-status

5
推荐指数
1
解决办法
2448
查看次数

git status表示最新的遥控器,即使它不是

我们有一个托管在多个同事访问的共享网络驱动器上的git存储库.我将其称为"中央存储库".员工将此仓库克隆到其本地计算机,进行更改,然后将更改推回原位.

我们注意到,如果有人将更改推送到中央存储库,则其他员工的本地git存储库不会表明它们不同步.git status

On branch master
Your branch is up-to-date with 'origin/master'.

nothing to commit, working directory clean
Run Code Online (Sandbox Code Playgroud)

但它显然不是最新的.遥控器有变化但git没有感应到它们.您可以执行此操作git pull并立即将更改下载到您的本地仓库,即使它声称它已经是最新的.

为什么会这样?是因为中央存储库托管在共享网络驱动器上吗?也许git出于任何原因无法判断它是否不同步?使用像Git Tower这样的GUI也没有什么区别.甚至在GUI中点击"刷新"也没有表明它不同步.此外,本地主分支正在跟踪origin/master.

有什么办法可以解决这个问题吗?

git git-status

5
推荐指数
1
解决办法
2206
查看次数

整个计算机处于Git状态未跟踪文件

我是git的新手,我想我不小心克隆在根目录中.当我提交一个文件(index.html)时,我注意到我的整个计算机(我的桌面,我的文档等)都在未跟踪的文件中.我删除了存储库,我想删除所有未跟踪的文件,显然不会删除计算机中的所有内容.关于丢失我的文件,我是新手和偏执狂.

git git-status

5
推荐指数
1
解决办法
6006
查看次数

当 git 只显示包含未跟踪文件的目录而不显示文件本身时,这意味着什么?

git 的相对新手,所以这可能是非常基本的东西。另一方面,我在询问之前搜索了很多这个答案。

在我的 git 存储库中,如果我在特定子目录(比主存储库目录低几级)中创建任何文件并运行git status,git 不会列出该目录中的文件,而只列出其名称。

我原以为这与它向下的级别有关,但是其他子目录中与级别相同(或更多)的其他未跟踪文件被列出而没有任何问题。

任何人都知道某个文件中是否有某些设置或某些条目会导致这种行为?

git subdirectory git-status

4
推荐指数
1
解决办法
898
查看次数

git status - 不显示未跟踪的文件

是否有选项可以git status显示未跟踪的文件?

我尝试了,git status -u no但隐藏了一切,并告诉:

"无需提交,工作目录清洁"

即使你有文件既提交提交而不是提交提交.

我希望它只显示为提交和修改的文件暂存的文件,但跳过未跟踪的文件.

git github git-status

4
推荐指数
1
解决办法
2103
查看次数

试图了解`git diff`和`git mv`重命名检测机制

这是我之前提出的另一个问题的后续措施。

正在编辑之前,最初创建的文件something被重命名为somethingelse可观察到这里

git mv something somethingelse
Run Code Online (Sandbox Code Playgroud)

该文件somethingelse然后得到重命名回something第二VIM编辑之前:

git mv somethingelse something
Run Code Online (Sandbox Code Playgroud)

基本上在代码的以下部分中

git mv something somethingelse
Run Code Online (Sandbox Code Playgroud)

如果在这一点上我添加abc到代码中,我们将最终得到:

First line of code. abc
Run Code Online (Sandbox Code Playgroud)

我认为这是第1行增加了4个字节,而这又将在此结束:

On branch master
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

        new file:   something
        deleted:    somethingelse
Run Code Online (Sandbox Code Playgroud)

然后,如果我们添加换行符并在第三行中键入abc(也应为4个字节,如果有错,请更正我):

First line of code.

abc
Run Code Online (Sandbox Code Playgroud)

突然,Git会检测到重命名(包括编辑):

On branch master
Changes to be committed:
  (use "git reset HEAD …
Run Code Online (Sandbox Code Playgroud)

git github git-diff git-status git-mv

3
推荐指数
1
解决办法
440
查看次数

没有签出分支的git状态

说我有:

git fetch origin
git status "remotes/origin/master"
Run Code Online (Sandbox Code Playgroud)

我不确定我是否可以检查一个我没有检查过的分支的状态,所以让我说我检查一个分支是这样的:

git branch foo "remotes/origin/master"
git checkout foo
git status
Run Code Online (Sandbox Code Playgroud)

我的问题是2倍:

  1. 我可以在不查看分支的情况下获取分支的git状态吗?
  2. foo的git状态是否会"不洁净"?我认为foo的git状态总是"干净"和"与遥控器同步".

git git-checkout git-status

3
推荐指数
1
解决办法
310
查看次数

如何以编程方式检查本地副本是否在远程副本后面?

目前我正在获取最新的,然后运行git status并解析输出,Your branch is up to date with 'origin/master'但这感觉就像一个黑客。

我已经研究过使用,git status --porcelain但这仅包括在系统上所做的文件更改,而不是在远程所做的更改。我不在乎实际进行了哪些更改,我只想知道是否存在任何更改(本地或远程)。

我将如何干净地实现这一目标?

git parsing git-diff git-remote git-status

3
推荐指数
1
解决办法
823
查看次数

如何使用“git status”仅查看某些类型的文件?

当我使用“git status”时,它会显示所有修改过的文件。但我希望只看到我将提交的具有特定扩展名(例如 .py)的文件。有没有办法做到这一点?

git git-status

3
推荐指数
1
解决办法
1617
查看次数