问题标签 [git-ls-files]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
9 回答
182186 浏览

git - Git:仅列出“未跟踪”文件(还有自定义命令)

有没有办法使用一个命令,比如git ls-files只显示未跟踪的文件?

我问的原因是因为我使用以下命令来处理所有已删除的文件:

对于未跟踪的文件,我想要类似的东西:

我能够找到 的-o选项git ls-files,但这不是我想要的,因为它还显示被忽略的文件。我还能够想出以下长而丑陋的命令:

似乎必须有一个更好的命令我可以在这里使用。如果没有,我如何创建自定义 git 命令?

0 投票
1 回答
13933 浏览

git - 裸存储库中的 git ls-files

我想访问一个裸 git 存储库,并且我想列出存储库中的所有文件。

在普通的 git 存储库上,我可以通过运行git ls-files.

示例输出:

在一个裸露的 git 存储库中,这会默默地失败。它只是不返回任何文件(但成功退出):

现在我知道我必须提供一个有意义的分支或 master 来显示。但是我如何才能真正获得我知道在我的存储库中的文件列表?

0 投票
2 回答
579 浏览

git - 坚固耐用,相当于“git ls-tree”

在一个裸存储库中,我可以键入$ git ls-tree -r master. (这与我可以使用命令在非裸仓库中获得的东西是一样的git ls-files

获取 git 存储库中文件及其 sha refs 的完整列表。

使用 Rugged,我如何获取特定分支或主控中的文件列表?

0 投票
1 回答
57 浏览

git - 列出一组用户对所有文件的最后编辑

问题:给定一个 git repo,显示由一组特定用户修改的文件,以及这些文件的最后一个编辑器(来自该组用户)。

潜在的解决方案:

这将产生所需的输出(如下),但速度很慢

有没有更快/更好的方法来做到这一点?

0 投票
1 回答
2474 浏览

git - `git ls-files -s`的输出中不同字段的含义是什么?

在 Git 中,命令返回的结果的典型行git ls-files -s如下所示

这些字段是什么意思?

0 投票
1 回答
150 浏览

git - Git - 将 cmd(即 ls 文件)链接到子模块

有没有办法将 cmds 链接到你的仓库中的子模块?我正在寻找内置方法,因为我需要它是可移植的且无需二次安装。

就我而言,我有一个基于 ls-files(和日志)的工作流管道,并且需要能够查看符合某些条件的文件,即使它们位于子模块中。

IE

仅显示当前 repo 中的文件并忽略子模块的文件。

0 投票
1 回答
1226 浏览

windows - 使用 git ls-files 复制修改文件的 Windows 命令是什么?

在 unix 机器上,您可以运行:

将修改后的文件复制到另一个目录。我想在 Windows 命令行上执行此操作。(此命令不起作用)。

我的问题是:使用 git ls-files 复制修改文件的 Windows 命令是什么?


编辑:

git版本是:git version 1.9.5.msysgit.0

澄清:问题不在于git ls-files命令是否有效 - 问题是如何将此文件列表传递给复制命令。

0 投票
1 回答
1888 浏览

git - Git ls 文件行为

目前尚不清楚git ls-files使用通配符的实际作用。

我从git ls-files *.*可以正常工作的命令开始。它显示了所有底层子目录中版本控制下的所有文件但是现在我想选择一组文件。例子 :"Device_*.xml"

所以我执行git ls-files Device_*.xml,但这没有结果?!

我知道该命令区分大小写。怎么了?下面是我使用输出执行的命令列表。使用的 Git 版本:2.6.1.windows.1

HEAD现在在7de8f5b[IP-826-generic-configuration-management-ticket] 将远程跟踪分支 'origin' 合并到 IP-826-generic-configuration-management-ticket

在分支 IP-826-generic-configuration-management-ticket

你的分支是最新的'origin/IP-826-generic-configuration-management-ticket'。

没有添加到提交但存在未跟踪的文件(使用“git add”来跟踪)

0 投票
2 回答
1867 浏览

git - git ls-files,如何转义文件路径中的空格?

在我们引入 .gitignore 文件之前,我们的 git repo 中已经检查了一大堆文件。我目前正在尝试清理它:

问题是许多文件路径中都有空格。

例如:

我需要删除整个 lotta 文件中的 WHOLE LOTTA SPACES。

我正在寻找一种优雅的方式:

  • A: 用“\”转义空格,例如

    Assets/Aoi\ Character Pack/Viewer/Resources/Aoi/Viewer\ BackGrounds/bg18.png.meta

-或者-

  • B:git ls-files把我的文件清单都抽出来,整齐地夹在引号之间。

    'Assets/Aoi Character Pack/Viewer/Resources/Aoi/Viewer BackGrounds/bg18.png.meta'

-编辑-

到目前为止我已经尝试过 git ls-files -i --exclude-from=.gitignore | sed 's/\ /\\\ /g'

虽然这很高兴地输出看起来像我期望的文件路径,但空格已转义.....当我尝试执行时

我得到 - 错误:未知开关 `\'

我预计管道会发生一些奇怪的事情。

0 投票
1 回答
447 浏览

linux - $(git ls-files -s | wc -l) 和 $(git ls-files -s >out && wc -l 之间的区别

这两个命令是不同$(git ls-files -s | wc -l)还是$(git ls-files -s >out && wc -l <out)相同,就像第一个以第二种形式编写时一样,我最终会出错。


必须保留从deflateflush方法返回的数据。

在这个特定的例子中,忽略从返回的数据deflate恰好起作用,因为输入很小。如果您将更大的缓冲区放入deflate中,而忽略它返回的内容,您将得到一个损坏的数据流。

这里有一点背景——默认情况下Compress::Zlib将创建一个符合RFC 1950的压缩数据流。gzinflate 查看此处的定义,看来此方法需要符合RFC 1951的数据流。

当返回的数据被忽略时,测试代码发生工作的原因flush归结为RFC 1950数据流只是一个RFC 1951数据流,具有两个字节的头部和四个字节的尾部。

下面的第一次调用deflate将只返回两个字节的标题,因为 $php_code只包含几个字节的数据

这意味着通过忽略从 返回的数据deflate,您最终会得到一个RFC 1951数据流,其中包含来自RFC 1950的预告片。phpgzinflate方法似乎可以解决这个问题。

如果输入数据较长,它将返回两个字节的标头一些压缩数据。

要获得Compress::Zlib以创建正确的数据流,请使用此