Questions tagged «git»

Git是一个开源的分布式版本控制系统(DVCS)。使用此标签可解决有关Git使用和工作流程的问题。不要仅仅因为存储库恰好托管在GitHub上而使用[github]标签来解决与Git相关的问题。另外,请勿对碰巧涉及Git储存库的一般编程问题使用此标记。

5
“ git merge”如何详细工作?
我想知道'git merge'之后的精确算法(或附近的算法)。至少对以下子问题的答案将有所帮助: git如何检测特定的非冲突更改的上下文? git如何找出这些确切的行之间存在冲突? git自动合并哪些内容? 当没有合并分支的通用基础时,git如何执行? 当有多个合并分支的通用基础时,git如何执行? 一次合并多个分支会发生什么? 合并策略之间有什么区别? 但是整个算法的描述会更好。
93 git  merge  conflict 

5
我何时需要在“ git add,git commit”之前或之后执行“ git pull”?
正确的方法是什么? git add foo.js git commit foo.js -m "commit" git pull git push 要么 git pull git add foo.js git commit foo.js -m "commit" git push 要么 git add foo.js git pull git commit foo.js -m "commit" git push UPD: 我忘了提及,在这种情况下,我使用的git add,要进行一次跟踪和修改的文件。不要在存储库中包含全新文件。这会改变命令顺序吗?
93 git 

2
将分支指向新提交
(这个问题与此相反) 我该如何去 dev C - D / master A - B 对此吗? dev D / master A - B - C 我知道看到答案后就会踢自己,但此刻我有点卡住了...
93 git 

7
Git和SSH,使用哪个密钥?
说你的 .ssh目录包含30个密钥(15个私有密钥和15个公开密钥)。 在Git中哪里可以检查哪个用于连接到给定的远程存储库?
93 git  ssh 

3
如何使git diff写入stdout?
默认情况下,将git diff所有+-行打印到标准输出,但是我有一台(devian)机器(我通过ssh连接),在那里git diff将我引向编辑器(我不知道是哪一个),我需要按q继续。 我已经检查了git config,它看起来像: $ git config --list user.name=XXX user.email=XXX@XXX color.ui=false difftool.prompt=false mergetool.prompt=false core.repositoryformatversion=0 core.filemode=true core.bare=false core.logallrefupdates=true remote.origin.fetch=+refs/heads/*:refs/remotes/origin/* remote.origin.url=XXX branch.master.remote=origin branch.master.merge=refs/heads/master $ git config --global --list user.name=XXX user.email=XXX@XXX color.ui=false difftool.prompt=false mergetool.prompt=false $ git config --system --list '/etc/gitconfig': No such file or directory 有我想念的地方吗?也许未知的工具是回退之类的东西,还是因为我的机器缺少某些东西?任何帮助表示赞赏。谢谢。
93 git  terminal 

10
如何在GitHub网站上重命名目录/文件夹?
我能够在GitHub网站上找到一种方法来重命名单个文件,并成功地做到了。 我还能够找到一种方法来重命名整个存储库,并成功地做到了这一点。 有谁知道如何在不使用命令行的情况下对单个目录执行此操作?作为参考,我正在尝试将名为InterviewTesting的目录(包含src文件等)更改为其他目录。我尝试以单文件方式进行操作。但是,这不允许我更改目录名称(InterviewTesting),只能更改实际文件名。
93 git  file  github  directory  rename 

14
多个heroku帐户
在计算机上使用多个Heroku帐户时遇到麻烦。 事实是,在使用heroku gem切换帐户之前,它的效果非常好。但是现在(即使我已经生成了新的SSH密钥),它也无法正常工作。 当我这样做时,git push heroku master它只是说: my@email.com无权访问my_app_name 有人对我该如何解决有任何建议吗?
92 git  heroku 


6
为什么在Mercurial中分支和合并比在Subversion中更容易?
在Subversion或CVS中将多个合并处理到分支上只是必须经历的事情之一。在Mercurial(以及可能的任何其他分布式系统)中跟踪分支和合并非常容易,但是我不知道为什么。还有谁知道吗? 我的问题源于以下事实:Mercurial可以采用类似于Subversions / CVS中央存储库的工作方式,并且一切都会正常进行。您可以在同一个分支上进行多次合并,并且不需要无休止的纸屑,包括提交号和标签名。 我知道最新版本的Subversion具有跟踪合并到分支的能力,因此您不会遇到相同程度的麻烦,但是这对他们来说是一个巨大而重大的发展,并且仍然无法完成开发团队的所有工作喜欢做。 所有工作方式都必须有根本的区别。

7
如何恢复硬盘故障损坏的Git对象?
我的硬盘出现故障,导致Git存储库的某些文件损坏。运行时,git fsck --full我得到以下输出: error: .git/objects/pack/pack-6863e0a0e4b4ded6090fac5d12eba6ca7346b19c.pack SHA1 checksum mismatch error: index CRC mismatch for object 6c8cae4994b5ec7891ccb1527d30634997a978ee from .git/objects/pack/pack-6863e0a0e4b4ded6090fac5d12eba6ca7346b19c.pack at offset 97824129 error: inflate: data stream error (invalid code lengths set) error: cannot unpack 6c8cae4994b5ec7891ccb1527d30634997a978ee from .git/objects/pack/pack-6863e0a0e4b4ded6090fac5d12eba6ca7346b19c.pack at offset 97824129 error: inflate: data stream error (invalid stored block lengths) error: failed to …


1
如何为git-status输出着色
我想给git-status输出着色,以便: untracked files = magenta new files = green modified files = blue deleted files = red 相反,我看到绿色的暂存文件和蓝色的未暂存文件: 我的.gitconfig是根据一些搜索设置的: [color] status = auto [color "status"] added = green changed = blue untracked = magenta deleted = red

3
'git pull origin mybranch'使本地mybranch N提交早于起源。为什么?
我只是发现一些奇怪的东西git pull,我不明白。 星期五,我在当地一家分公司工作。让我们称之为mybranch。在离开办公室之前,我把它推到原点(这是我的GitHub库)git push origin mybranch。 昨天在家,我将pullmybranch带到笔记本电脑上,做了一些编码,然后将所做的更改推回了github(起源)。 现在,我再次上班,并尝试将昨天的更改应用于我的工作计算机(周末我在工作场所的本地存储区中未进行任何更改): git pull origin mybranch 导致快速向前合并,这很好。然后git status,我做了一个,说: # On branch mybranch # Your branch is ahead of 'origin/mybranch' by 6 commits. # nothing to commit (working directory clean) ??当我什至在周末什至没有碰到它并且刚从起源中撤出时,怎么会有6次提交?所以我跑了一个git diff origin/mybranch,差异就是我刚刚从远程拉出的6个变化。 我只能通过运行“修复”此问题git fetch origin: From git@github.com:me/project af8be00..88b0738 mybranch -> origin/mybranch 显然,我的本地仓库缺少一些参考对象,但是那怎么可能呢?我的意思是,pull已经完成了获取,并且除了该分支外,我什么都没做,所以a git fetch …

4
git-stash与git-branch
在先前的Git问题中,Daniel Benamy在谈论Git中的工作流程: 我当时正在研究母版,并做了一些工作,然后决定要暂停该工作。我备份了一些提交,然后从开始垃圾工作之前分支。 他希望将工作状态恢复到以前的时间点,而又不丢失当前的更改。所有的答案都以各种方式围绕着 git branch -m master crap_work git branch -m previous_master master 与之相比git stash呢?当看起来一切git stash都已经由分支处理时,我很难理解这里的不同用例…… // @ Jordi Bunster:谢谢,这可以解决问题。我想我应该考虑“隐藏”像一个轻量级的,无名的分支。因此,存储可以做的任何事情,分支也可以做,但是要增加更多的单词。真好!
92 git 

3
'git format-patch和'git diff'有什么区别?
我没有看到'git format-patch'和'git diff'的输出之间的区别,有什么区别吗?而且我不能使用'git diff'生成补丁,然后使用git apply应用它吗? 我的问题是我在索引中添加了更改,但是显然git format-patch仅接受提交,因此,如果我可以使用diff的输出,那么可以使用此命令为索引中的更改生成补丁: git diff --cached > index.patch
92 git  diff  patch 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.