标签: git-fetch

有没有理由不设置'git fetch'来始终使用--prune选项?

使用git fetch --prune删除远程计算机上的分支时删除本地远程跟踪分支.使用以下命令将remote.origin.prune设置为true ...

git config --global fetch.prune true
Run Code Online (Sandbox Code Playgroud)

...使用fetch命令总是隐式使用--prune选项.

我正在为我的小组中不熟悉它的一些开发人员整理git的最佳实践/介绍.在建议他们这样做之前,我想确定我知道这不是一种危险的行为.如果发生一些无关紧要的事故,我至少会让他们了解需要注意的事项.

它似乎不是一个破坏性操作,因为它不会删除任何本地(非远程)分支.如果没有定期指定git fetch --prune或git remote prune,这似乎是一种不构建不再使用的遥控器的好方法.

如果这都是真的,为什么这不是git的默认行为?

git git-fetch git-remote

13
推荐指数
1
解决办法
1364
查看次数

如何查看vscode并排文件上的git diff?

大家好,我的问题是关于git diff,我想知道如何git diff master origin/master在VSCODE终端上的命令中以文件形式查看,我git fetch从远程存储库中执行了一个操作,现在我想查看差异,但命令仅显示我在航站楼。我正在努力得到这样的东西...

我想要的例子:

在此处输入图片说明

git git-diff git-fetch git-difftool visual-studio-code

13
推荐指数
10
解决办法
1万
查看次数

Git"获取网址"和"推送网址",有什么区别?

某个遥控器的Fetch URL和Push URL何时不相同?

例如,当我运行git remote show central远程命名为central时,输出如下:

* remote central
  Fetch URL: aoberoi@example.com:/home/aoberoi/Repositories/example.git
  Push  URL: aoberoi@example.com:/home/aoberoi/Repositories/example.git
  HEAD branch: master
  Remote branch:
    master tracked
Run Code Online (Sandbox Code Playgroud)

我只是不明白为什么我会从两个不同的URL中获取和推送,这是什么类型的工作流程?

git workflow push git-fetch

12
推荐指数
1
解决办法
6894
查看次数

git pull vs git-fetch有些困惑

所以 - 有人可以澄清这个:

我跑:

git pull origin master  
git status
Run Code Online (Sandbox Code Playgroud)

然后它就会提出改变并说:

your branch is ahead of origin/master ... blahblah by 6 commits...
Run Code Online (Sandbox Code Playgroud)

当我跑的时候

git fetch
git status
Run Code Online (Sandbox Code Playgroud)

它说:

# On branch master
nothing to commit (working directory clean)
Run Code Online (Sandbox Code Playgroud)

所以 - 我认为git pull默认情况下会执行git fetch - 那么为什么它会在没有额外的情况下"提前6次提交" git fetch呢?

git git-pull git-fetch

12
推荐指数
1
解决办法
1021
查看次数

git fetch origin不会获取所有分支

我读了这个问题的答案,git fetch origin应该取得所有原始分支.在我的情况下,它似乎并没有给我任何分支.这是我做的:

最初,一个名为origin的远程有7个分支.我克隆了它.git branch然后只返回master.我做了git fetch origin,git branch仍然只是表演master.如何在不单独获取的情况下获取其他6个分支?

git branch git-fetch git-clone

12
推荐指数
1
解决办法
8570
查看次数

git fetch到底做了什么?

编辑:我已经检查过这个在Git中的FETCH_HEAD是什么意思? 在提出问题之前.
抱歉原始的不准确的问题.

我的问题是fetch是如何工作的?fetch会丢弃所有当前日志吗?

这是我的情况:我的队友和我正在使用只有一个分支的相同存储库.因此我们必须在推送之前进行提取.
我们通常这样做:

git status
git add .
git commit -m message1
git fetch origin
git reset head
git status
git add .
git commit -m message
git push
Run Code Online (Sandbox Code Playgroud)

但重置后,似乎我之前的提交(with message1)已经消失.

这是正常的还是有什么不对?
我如何访问我的本地历史记录?
它们已经同步但我的当地历史已经消失.

老员工,算了吧:我最近一直在学习Git CLI.
有人告诉我键入" git fetch head"以跟踪远程分支.
但我想知道这是做什么的?此命令是否覆盖我的本地日志?
" git fetch"和" git fetch head" 之间有什么区别?

git git-fetch

12
推荐指数
1
解决办法
5398
查看次数

如何使用Git*INTO*裸存储库提取/获取?

我正在编写一个工具来将我的所有存储库从Bitbucket(支持Git和Mercurial)备份到我的本地计算机.

它已经适用于Mercurial,我这样做:

  • 在本地计算机上创建一个没有工作副本的新空存储库
    (与bareGit存储库相同)
  • 从远程存储库拉入本地空存储库

现在我正在尝试用Git做同样的事情.

已经发现我不能直接pull访问裸存储库,而是应该使用它fetch.

所以我试了一下:

C:\test>git fetch https://github.com/SamSaffron/dapper-dot-net.git
remote: Counting objects: 1255, done.
remote: Compressing objects: 100% (1178/1178), done.
remote: Total 1255 (delta 593), reused 717 (delta 56)
Receiving objects: 100% (1255/1255), 13.66 MiB | 706 KiB/s, done.
Resolving deltas: 100% (593/593), done.
From https://github.com/SamSaffron/dapper-dot-net
 * branch            HEAD       -> FETCH_HEAD
Run Code Online (Sandbox Code Playgroud)

显然Git 确实取了一些东西,但之后本地存储库是空的.
(git logfatal: bad default revision 'HEAD')

我究竟做错了什么?

免责声明:
我只有非常非常基本的Git知识(我通常使用Mercurial).
我正在使用Windows,如果这很重要的话.

git git-pull git-fetch

11
推荐指数
2
解决办法
7416
查看次数

git获取不足以将对象添加到存储库数据库.git/objects的权限?

在我的主目录(在Ubuntu盒子上)的repo中我做了

 git fetch
Run Code Online (Sandbox Code Playgroud)

我很遗憾地得到一个错误:

 insufficient permission for adding an object to repository database .git/objects
Run Code Online (Sandbox Code Playgroud)

.git/objects中有大量的目录,所有这些目录都是775.我做过的少数抽样检查显示文件是664.

我去了,做了一个

 chmod -R 777 .git/objects 
Run Code Online (Sandbox Code Playgroud)

这解决了问题,但现在我的盒子上有一堆文件777,我确信这是一个禁忌.

什么应该是正确的权限,如何轻松地正确设置所有1000万个文件和目录?

提前致谢.

git permissions file-permissions directory-permissions git-fetch

11
推荐指数
1
解决办法
6940
查看次数

与"git fetch"相反的是什么?

如果我不混帐从取回购AB,在主分支B唯一的改变-不改变remotes/origin/master,并git status让我想起了它.

但现在我想做相反的事情- 更新,BA推动A:masterB:remotes/origin/master.这样做的原因是此更新发生在ssh上,并且A机器具有公钥验证B机器 - 但反之亦然.

我怎样才能做到这一点?

git git-fetch

11
推荐指数
1
解决办法
1400
查看次数

如何将上游分支的更改合并到我的分支分支

我想从上游存储库的分支中提取更改。我已经使用以下命令设置了上游存储库:

git remote add upstream http://URL-of-master-repo.git 
Run Code Online (Sandbox Code Playgroud)

然后我尝试使用来拉取更改

git checkout my-local-branch
git fetch upstream remote-branch
git merge upstream/remote-branch
Run Code Online (Sandbox Code Playgroud)

但文件仍然没有出现在我的磁盘上,但我遇到了冲突:

Auto-merging minimal-build-config.cmake
CONFLICT (content): Merge conflict in minimal-build-config.cmake
Automatic merge failed; fix conflicts and then commit the result.
Run Code Online (Sandbox Code Playgroud)

如何正确解决冲突以便能够从上游分支获取文件?

git merge git-fetch

11
推荐指数
1
解决办法
2万
查看次数