我是Git的新手.任何项目的开始工作似乎都从"git clone"开始.但这似乎需要很长时间 - 比等效的"svn checkout"长得多.这是因为项目的整个历史从一开始就被复制了吗?是否可以跳过历史记录,只获取最新文件(但保留存储库信息,允许将来拉动等).
我想使用Git跟踪大型工作目录(许多演出)的微观变化(每天几次).数据将是混合二进制/纯文本.二进制数据的变化几乎不会与文本信息一样多.很少需要访问旧提交,并且可能很慢,而最近的历史需要很快.
我不想永久丢失旧数据,只需将其移动到备份服务器或其他东西.Git中是否存在允许将旧历史存档并仅在本地存储库中保留某个子集的内容?
如果没有,是否有更适合此目的的工具?我喜欢Git,因为我知道它,我想要版本控制和差异.我不需要Git的任何高级功能(如分支/合并,不分发),所以任何其他类似的VCS都会很好.
是否有可能做到这一点?我有一些分支和很多提交,我正在尝试,
git push - --all origin但我得到了shallow update not allowed.
提前致谢.
我的回购历史悠久,所以我克隆使用
git clone <url> --depth 1
Run Code Online (Sandbox Code Playgroud)
现在我在主分支。
如何获取之前分支 3 个提交的名为“功能/我的功能”的远程分支?
我试过了:
git checkout -b feature/my-feature origin/feature/my-feature
Run Code Online (Sandbox Code Playgroud)
和
git fetch -all
Run Code Online (Sandbox Code Playgroud)
但我仍然只看到 master 分支
在我们尝试引入Git的组织中,我们现在遇到与二进制文件相关的Git行为问题.
我们的项目将混合使用二进制和文本类型文件,典型大小可以是1 GB.我们担心几年后完整克隆会变得太大并导致性能和磁盘空间问题.
迁移到Git的环境之一将其SW当前放在名为TCM的系统上.版本为7 - 10年的存储库总大小为2 TB.
ClearCase的另一个环境大约有7到8年的数据,大约1 TB.
由于Git不会以特别影响二进制文件的增量存储,因此5年以上的情况会引起用户的关注.
浅克隆功能将是理想的.但是文档说这个"浅的存储库有许多限制(你不能克隆或获取它,也不能从中推送或插入它),但如果你只对一个长期的大型项目的近期历史感兴趣就足够了历史,并希望将修补程序作为补丁发送." 粗略检查浅克隆将表明它工作正常,但绝对有已知的用例,它不会工作,因此文档
是否有一个已知的用例列表,这不会工作?
我想计算 git 存储库中的总代码行数。我在谷歌找到了答案。
git ls-files -z | xargs -0 cat | wc -l
它在本地存储库中运行良好。
但。我想在远程存储库中计数。
所以,我试过了。
git ls-files -z /home/bjyoo/repositories/root/localfiletest.git | xargs -0 cat | wc -l
,
git ls-files -z --git-dir=/home/bjyoo/repositories/root/localfiletest.git | xargs -0 cat | wc -l
和
git --git-dir=/home/bjyoo/repositories/root/localfiletest.git --ls-files | xargs -0 cat | wc -l
所有命令失败。
有谁知道如何计算代码总行数?
标题基本上.
我只是混一些事情与我.gitignore和我的臃肿.gitDIR到> 100MB(它与总喜欢100commits回购..).
所以我是一个懒惰的人,并想知道是否有可能删除我的历史.我不想改变某些东西或东西,我只是想缩小我的.git目录尺寸.
当没有办法做到这一点时,我只是让git clone --depth 1我的回购获得同样的效果.
我正在尝试在完成所有安装后运行存储库
angular2-webpack-starter。当我运行命令npm start或webpack它抛出以下错误:
ERROR in ./src/vendor.browser.ts
Module not found: Error: Can't resolve '@angular/core' in 'E:\mya4p\gtLbA4p\angular2-webpack-starter\src'
@ ./src/vendor.browser.ts 10:0-24
ERROR in ./src/vendor.browser.ts
Module not found: Error: Can't resolve '@angular/common' in 'E:\mya4p\gtLbA4p\angular2-webpack-starter\src'
@ ./src/vendor.browser.ts 11:0-26
ERROR in ./src/vendor.browser.ts
Module not found: Error: Can't resolve '@angular/forms' in 'E:\mya4p\gtLbA4p\angular2-webpack-starter\src'
@ ./src/vendor.browser.ts 12:0-25
ERROR in ./src/vendor.browser.ts
Module not found: Error: Can't resolve '@angular/http' in 'E:\mya4p\gtLbA4p\angular2-webpack-starter\src'
@ ./src/vendor.browser.ts 13:0-24
ERROR in ./src/vendor.browser.ts
Module not found: Error: Can't resolve '@angular/router' in 'E:\mya4p\gtLbA4p\angular2-webpack-starter\src' …Run Code Online (Sandbox Code Playgroud) 当我跑步git pull或者git fetch,我显然检索历史和文件.对于大型项目,这需要很长时间.我想知道如何加快这个过程,对于一些项目我只对源代码而不是历史感兴趣.有没有办法告诉git我只想获取文件的当前快照而不是整个历史记录?
我需要从一个特定的分支中获取文件.我已经尝试了几个命令,但它最终会拉动整个repo,而不仅仅是我需要从特定分支拉到目录的几个文件.
git版本1.7.1
我们的一些实时网站收到自动代码更新.我希望这些自动提交(不要担心这个的完整性,一切都经过单元测试,只有小型网站得到自动更新).
当我把回购放在实时网络服务器上时,尺寸变得非常大.
在本地历史中仅保留1个分支的最小历史记录的最佳方法是什么?
谢谢.
git ×11
bitbucket ×2
repository ×2
angular ×1
bash ×1
clone ×1
github ×1
linux ×1
performance ×1
svn ×1
typescript ×1
webpack ×1