小编Ter*_*hen的帖子

如何获取文件夹下所有文件的最后提交信息

我想获取一个文件夹下所有文件的最后作者,最后提交日期,最后提交信息,就像GitHub网站或Gitlab网站的文件列表信息一样。我知道我可以使用git log来一一获取所有文件的信息,但我认为它效率不高,有没有什么git命令可以更有效地获取所有文件的信息?

git

5
推荐指数
0
解决办法
67
查看次数

如何获取LFS文件的实际大小?

我有使用git LFS跟踪的文件,我使用git ls-tree命令列出文件大小的文件,但我发现LFS tarcked文件的大小非常小(134字节,其实际大小超过100MB),我知道它是 LFS 指针文件的大小。有谁知道如何获得实际的文件大小?

使用命令“git ls-tree -l HEAD”列出存储库树

git git-lfs

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

如何将路径数组转换为树对象?

我想将文件和文件夹路径数组转换为树对象(下面的对象数组,子项指向自身的数组):

type TreeItem<T> = {
  title: T
  key: T
  type: 'tree' | 'blob'
  children: Array<TreeItem<T>>
}
Run Code Online (Sandbox Code Playgroud)

文件和文件夹路径来自“git ls-tree -r -t HEAD”命令,该命令列出了git存储库的树对象,如下所示:

100644 blob 68afe6febb3f4ab2155b436e2e5a43f62399388b    LICENSE
100644 blob 78d926deaf73e93c12257d0be9dc10f39662aad0    README.md
040000 tree eefd18d086bb6089a4e392bda3105fd32399146b    app
100644 blob 631e6d753849db0ed05d0124ab62c8e5522f1c32    app/.npmrc
100644 blob 72da957f1fec5b3dec8e89e9ab9364bb96a929b0    app/.yarnrc
100644 blob cb66e81274ca308805350d8c1ccc68811994ed1c    app/app-info.ts
100644 blob 1bf399b381dab7c260c1dc4126025c7ab1a437af    app/git-info.ts
100644 blob ec6e40fb46f6554d62823e5f27a8743de594acff    app/package-info.ts
100644 blob bf92f9a597bfd8b8e9b2308a4848faa6937f4a1e    app/package.json
040000 tree dd30a6b5ee422a42da4561ea8443ef8a4a82c078    app/src
040000 tree c8473c433cf8ec2a3d9b67171cff665d7176f264    app/src/ask-pass
100644 blob 76adbc48d6d239fd39eab1ea08c8ee2408df3ece    app/src/ask-pass/ask-pass.ts
100644 blob e1de6d753ce44680071ab7c67615e2d81b279c21    app/src/ask-pass/main.ts
...
Run Code Online (Sandbox Code Playgroud)

如您所见,我可以通过第二列判断它是文件还是文件夹。我为上面的文件和文件夹对象定义了如下结构:

interface GitTreeObject {
  readonly type: …
Run Code Online (Sandbox Code Playgroud)

javascript node.js typescript

0
推荐指数
1
解决办法
1219
查看次数

标签 统计

git ×2

git-lfs ×1

javascript ×1

node.js ×1

typescript ×1