git - 浅克隆后浅 pull

标签 git

假设我使用 --depth 1 从 linux git 存储库克隆:

git clone --depth 1 git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git

几天过去了,所以新的提交在上游可用,所以我想通过执行 git pull 来获取这些更改,但是这样做会获取我通过执行 验证的整个提交历史git log,最后一次提交确实是整个仓库的第一次提交。

我不需要项目的整个历史,我只需要从最初的浅克隆到 pull 时间的新数据。

所以我改为尝试 git pull --depth 1,只是为了得到一个显然不应该存在的 merge 冲突,因为我没有在本地修改存储库。

我真的认为我想做的事情应该是可能的并且已经在 Git 中实现了,但我只是做错了。执行此操作的正确方法是什么?

最佳答案

我相信我想要的是

git checkout master
git fetch --depth 1
git reset --hard origin/master

我对 Git 还比较缺乏经验,希望有经验的人能帮我验证一下。

关于git - 浅克隆后浅 pull ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36260635/

相关文章:

linux - git分支和运行程序

git - Termux 代码在 Android 手机的 termux 上安装 git

git - 这 3 个 .gitignore 条目有什么区别?

git - 如何在github上自动提交和推送?

git - 如何使用 SourceTree 更新我的 fork 存储库?

git - 如何从远程标签执行 "git checkout -b <branchname>"

git push 在 HTTP/1.1 100 之后卡在(哑)https 上继续

git - Heroku 没有更新我的代码?

混帐 : How to merge the changes from a closed pull request?

git clone "fatal: I don' t handle protocol 'ssh' "