Questions tagged «git»

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


4
Git分支在重新设置后分叉
我已经本地化了已经推送的分支。 Git建议我的分支机构和远程机构出现分歧,并且: “并且分别具有109和73个不同的提交” 推送我的分支机构是否可以解决此问题-即在重新设置基准后是否可以预期?
112 git 

5
Git:将整个git历史记录中指定文件中的所有各种更改显示在一行中
我环顾四周,不确定是否可行,但是这里有: 我有一个(javascript)文件(例如/lib/client.js),其中有一个分配给变量的唯一标识符,如下所示: var identifier = "SOME_IDENTIFIER"; 您可以将标识符视为版本号:我们会定期将此变量更改为新的标识符。 我想做的是找到我们曾经使用过的所有唯一标识符。如何使用git做到这一点? 我想可能有一种方法可以搜索git历史记录,并打印匹配的行"var identifier ="。我可以手动删除此列表。 无论如何,我将不胜感激。谢谢。
112 git 

1
暂存文件的Git列表
我使用上演了很多文件git add,现在我想查看我已上演的所有文件,没有未跟踪的文件或已更改但未上演的文件。 我怎么做?使用时,git diff --cached我可以看到我刚刚上演的内容的变化。所以然后我尝试使用git status --cached但--cached不幸的是无法使用git status。

3
如何从远程拉文件而不覆盖本地文件?
我正在尝试为现有的远程仓库建立一个新的git仓库。 我希望本地文件覆盖远程存储库,但是git说我首先必须将那些远程文件拉入并合并。 有什么办法可以拉,但要确保本地文件不会被远程主机覆盖?
112 git  github 

18
git:更新被拒绝,因为远程包含您在本地没有的工作
我正在与一些在BitBucket上使用git的开发人员一起工作。我们都在dev分支上工作,master直到发布为止。 其中一名开发人员提交了不正确的代码,这些代码不小心覆盖了我自己的代码,现在我正在尝试将正确的代码推回存储库。我已经读了几天这个错误了,由于我遇到以下错误,我不能再推送到仓库了: ! [rejected] master -> dev (fetch first) error: failed to push some refs to 'https://myusername@bitbucket.org/repo_user/repo_name.git' hint: Updates were rejected because the remote contains work that you do hint: not have locally. This is usually caused by another repository pushing hint: to the same ref. You may want to …

6
Git状态忽略行尾/相同的文件/ Windows和Linux环境/ Dropbox / mled
我怎么做 git状态 忽略行尾差异? 背景信息: 我随机使用Windows和Linux进行该项目。该项目在Dropbox中。 我发现了很多有关如何使git diff忽略行尾的内容。由于我使用git git diff,因此会为每个文件打开meld。并说“相同文件”。 因此,如何避免这种情况。Git应该只对已更改的文件打开融合。如果只有文件结尾不同,则git status不应报告文件已更改。 编辑:原因: 发生这种情况是因为Windows上有此设置 core.autocrlf是 因此,我在Linux上签出了工作副本,并在Windows上将core.autocrlf设置为false。 知道如何使git status忽略不同的新行还是很高兴的。

2
将远程分支拉入具有不同名称的本地仓库中?
好吧,我对此进行了一些研究,但是我找不到确切的答案,所以我不得不问。 我有2个遥控器:origin和repo2。 我想做类似的事情 git pull repo2 master 但这会将repo2的master分支拉到我的master中。我可以为本地分支指定要引入的其他分支吗?
112 git  github  repository 

7
删除由git创建的大型.pack文件
我将大量文件放入分支中并合并,然后将其删除,现在剩下的是一个很大的.pack文件,但我不知道该如何删除。 我使用删除了所有文件,git rm -rf xxxxxx并且也运行了该--cached选项。 有人可以告诉我如何删除当前在以下目录中的大.pack文件: .git/objects/pack/pack-xxxxxxxxxxxxxxxxx.pack 我是否只需要删除我仍然有但不再使用的分支?还是我还需要跑步? 我不确定它有什么区别,但是它显示了对该文件的挂锁。 谢谢 编辑 这是我bash_history的一些摘录,应该摘录一下我如何设法进入这种状态(假设此时我正在使用一个名为“ my-branch”的git分支,并且我有一个包含更多文件夹的文件夹/文件): git add . git commit -m "Adding my branch changes to master" git checkout master git merge my-branch git rm -rf unwanted_folder/ rm -rf unwanted_folder/ (not sure why I ran this as well but I did) 我以为我也运行了以下内容,但它没有与其他人一起出现在bash_history中: …

5
在Git中更改电子邮件地址
我有一个托管在Git stash中的项目(现已更名为Bitbucket Server)。它是使用詹金斯构建的。现在,我在本地安装Git时打了一个错字。喜欢@ ab.com,而不是@ abc.com 每次构建后,jenkins都会发送电子邮件通知,并从Git commit提取我不正确的电子邮件地址,然后尝试发送。 即使更改了本地Git中的电子邮件地址,我仍然看到jenkins将电子邮件发送到旧的不正确地址。 我怎样才能解决这个问题?
112 git  email  jenkins  git-stash 


5
如何从远程跟踪分支(如“ git pull”)进行“ git fetch”和“ git merge”
我已经在git中设置了一些远程跟踪分支,但是一旦用'git fetch'更新了它们,我似乎永远无法将它们合并到本地分支中。 例如,假设我有一个名为“ an-other-branch”的远程分支。我在本地将其设置为跟踪分支 git branch --track an-other-branch origin/an-other-branch 到目前为止,一切都很好。但是,如果该分支得到更新(通常是由我移动机器并从那台机器提交),并且我想在原始机器上更新它,则获取/合并会遇到麻烦: git fetch origin an-other-branch git merge origin/an-other-branch 每当执行此操作时,都会收到“已经更新”消息,并且没有任何合并。 但是, git pull origin an-other-branch 总是按照您的期望进行更新。 另外,运行git diff git diff origin/an-other-branch 表明存在差异,因此我认为我的语法错误。 我究竟做错了什么? 编辑[2010-04-09]:我已经检查了几次,而且绝对不在其他分支上。我的“ git fetch”后面跟着“ git merge”(如上所示)是否应该做与git pull完全相同的事情?我将获得一些显示git status等结果的工作流。

3
如何制作vi重绘屏幕?
当我使用 git commit --amend 它将进入一个vi窗口,让我输入要提交的注释,问题是vi窗口将显示一些来自先前shell背景的脏字符。所以我想知道如何让vi重新加载或重画屏幕以使屏幕正常。 到目前为止,我尝试重置终端和Ctrl + L,它可以正常工作,但是我想知道对于这种情况是否有最佳答案?
111 git  vim 

6
在Vim上使用git commit -a
我是git的新手,所以我决定使用github的教程学习git。第三章说: “对于第一个示例,我们将修改README文件以将自己添加为项目的作者。因此,我们只需编辑该文件。现在我们要提交更改,因此我们运行git commit -a命令。” 当我使用git commit -a命令时,控制台会打开一个vim并写了我的消息,但是我不知道如何从控制台关闭该vim编辑器。如何保存消息并关闭vim?
111 git  vim 

17
Git Diff与超越比较
我已经成功使git作为比较工具启动了Beyond Compare 3,但是,当我进行比较时,正在比较的文件没有被加载。仅加载文件的最新版本,而没有其他任何加载,因此“超出比较”的右窗格中没有任何内容。 我正在Beyond Compare 3上与Cygwin一起运行git 1.6.3.1,我已经按照他们在其网站的支持部分中所建议的那样,使用如下脚本来设置超越比较: #!/bin/sh # diff is called by git with 7 parameters: # path old-file old-hex old-mode new-file new-hex new-mode "path_to_bc3_executable" "$2" "$5" | cat 还有其他人遇到这个问题并知道解决方案吗? 编辑: 我遵循了VonC的建议,但我仍然遇到与以前完全相同的问题。我对Git有点陌生,所以也许我没有正确使用diff。 例如,我正在尝试使用以下命令查看文件上的 差异:git diff main.css 然后,“超出比较”将打开,并且在左窗格中仅显示我当前的main.css,在右窗格中没有任何内容。我希望在左窗格中看到我当前的main.css与HEAD相比,基本上是我上次提交的内容。 我的git-diff-wrapper.sh看起来像这样: #!/bin/sh # diff is called by git with 7 parameters: # …
111 git  beyondcompare 

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.