Questions tagged «git»

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

12
想要从“ git diff”中排除文件
我正在尝试db/irrelevant.php从Git差异中排除文件()。我尝试将文件放在该行所在的db子目录中.gitattributes,irrelevant.php -diff 还尝试创建一个名为.git/info/attributes包含的文件db/irrelevant.php。 在所有情况下,该db/irrelevant.php文件均作为Git二进制补丁包含在diff中。我想要的是通过diff命令忽略对该文件的更改。我究竟做错了什么?
228 git  diff  git-diff 

6
如何显示git repo子目录的git日志历史记录?
Наэтотвопросестьответына 堆栈溢出нарусском:Получитьсписоккоммитовдляопределённойпапки 可以说我有一个看起来像这样的git repo。 foo/ .git/ A/ ... big tree here B/ ... big tree here 有没有办法让git log只显示特定目录的日志消息。例如,我只想查看仅在foo / A中提交了触摸文件的内容?
228 git 

11
仅存储未分阶段的Git更改
我想执行以下工作流程: 向舞台添加更改。 存放所有其他尚未上演的更改。 在阶段中做一些事情(例如,构建,运行测试等) 应用藏匿处。 有步骤2的方法吗? 例 echo "123" > foo git add foo # Assumes this is a git directory echo "456" >> foo git stash cat foo # Should yield 123
228 git  git-stash 

13
如何在git中找到来源/主服务器的位置,以及如何更改它?
我是Git新手。我最近将Rails项目从Subversion移到了Git。我在这里遵循了该教程:http : //www.simplisticcomplexity.com/2008/03/05/cleanly-migrate-your-subversion-repository-to-a-git-repository/ 我还使用unfuddle.com来存储我的代码。我在火车上的Mac笔记本电脑上上下班进行更改,然后在使用网络连接时使用以下命令将它们推开以解除混乱: git push unfuddle master 我使用Capistrano进行部署,并使用master分支从非混淆存储库中提取代码。 最近,当我在笔记本电脑上运行“ git status”时,我注意到以下消息: # On branch master # Your branch is ahead of 'origin/master' by 11 commits. # nothing to commit (working directory clean) 我对为什么感到困惑。我以为我的笔记本电脑是笔记本电脑的起源...但不知道我最初是从Subversion中拉出还是推到Unfuddle的事实是导致消息出现的原因。我怎样才能: 找出Git认为“来源/主”在哪里? 如果在其他地方,我如何将笔记本电脑变成“原产地/主人”? 获取此消息以消失。这让我觉得Git对某些事情不满意。 我的Mac运行的是Git 1.6.0.1版。 当我git remote show origin按照dbr的建议运行时,得到以下信息: ~/Projects/GeekFor/geekfor 10:47 AM $ git remote show …
227 git  git-push  git-remote 

9
Git diff说子项目很脏
我刚刚运行了git diff,我的大约10个子模块都得到了以下输出 diff --git a/.vim/bundle/bufexplorer b/.vim/bundle/bufexplorer --- a/.vim/bundle/bufexplorer +++ b/.vim/bundle/bufexplorer @@ -1 +1 @@ -Subproject commit 8c75e65b647238febd0257658b150f717a136359 +Subproject commit 8c75e65b647238febd0257658b150f717a136359-dirty 这是什么意思?我如何解决它?

6
忽略已签入目录的内容?
我有一个git存储库,该存储库仅用于保存多个项目中使用的图形和声音文件。它们都在一个目录中,没有子目录。现在,我刚刚创建了一个脚本,以将这些资产从具有多个子目录级别的另一个结构化目录中复制过来。 现在,我只希望git跟踪(源)分层文件结构,并且(目标)平面目录(所有文件都放在一堆中)应该被忽略。 我已经将目标目录添加到.gitignore中,但是git仍在跟踪其中的更改。我以为如果我删除了目标目录中的旧文件,git可能会停止跟踪新内容(由脚本复制),但事实并非如此。 如何使git忘记目标目录?

11
将Git远程“推送到”更改为默认值
我想更改Git默认的远程分支目的地,所以我可以 git push 代替: git push upstream 当前,此设置为原始远程,我想将其设置为其他远程。 我试图删除原始(克隆自)遥控器 git remote rm origin 确实删除了原始遥控器。但是并不能解决git push问题。我仍然得到: 致命:没有配置的推送目标。 从命令行指定URL 或使用...配置远程存储库 我也试着玩: git remote set-url --push myfork origin 和其他选项,但似乎都不起作用(也许是因为我太早删除了原始远程服务器?) 按照这里的答案,我尝试更改: git config push.default upstream (or matching) 但都没有奏效。
227 git  git-push  git-remote 

3
获取存储的创建日期
有什么办法可以告诉您什么时候创建了存储吗? git stash list仅列出存储区,并git stash show XXXXXX显示所有文件和更改,但不显示存储区创建的日期。
227 git  git-stash 

3
如何列出所有包含提交的标签?
这个问题类似于如何在git中列出指向特定提交的所有标签,但有一个区别:我希望在每个标签的树中搜索包含特定提交的所有标签,而不是专门搜索标签中标记的文件本身(在这种情况下,仅标记了Makefile更改)。
227 git 

17
在Git克隆后直接显示为已修改的文件
目前,我在存储库方面遇到问题,尽管我的Git-fu通常很好,但似乎无法解决此问题。 当我克隆此存储库时,然后cd将其复制到存储库中,将git status显示几个已更改的文件。注意:我尚未在任何编辑器或任何工具中打开存储库。 我尝试遵循以下指南:http : //help.github.com/dealing-with-lineendings/,但这对我的问题完全没有帮助。 我已经尝试了git checkout -- .很多次,但是似乎什么也没做。 我在Mac上,存储库本身没有子模块。 该文件系统是Mac上的“ Journaled HFS +”文件系统,不区分大小写。这些文件为单行,每个文件约为79 KB(是的,您没听错),因此查看git diff并不是特别有用。我听说过这样做git config --global core.trustctime false可能会有所帮助,当我回到装有存储库的计算机时,将尝试这样做。 我用事实改变了文件系统的细节!我尝试了git config --global core.trustctime false效果不佳的技巧。
227 git  git-clone 

15
git pull error:error:远程引用在但预期
完整讯息: error: Ref refs/remotes/origin/user is at 3636498c2ea7735fdcedc9af5ab3c8689e6abe77 but expected a21359c6cc2097c85775cde6a40105f4bd7100ec From github.com:{github project url} ! a21359c..6273ffc user -> origin/user (unable to update local ref)
227 git  pull  git-pull 

21
致命:当前分支主机没有上游分支
我正在尝试将我的一个项目推送到github,并且不断收到此错误: peeplesoft@jane3:~/846156 (master) $ git push fatal: The current branch master has no upstream branch. To push the current branch and set the remote as upstream, use git push --set-upstream origin master 所以我尝试了一下,得到了: peeplesoft@jane3:~/846156 (master) $ git push --set-upstream origin master fatal: Authentication failed 另一个stackoverflow线程建议我尝试以下操作,但结果令人失望。 peeplesoft@jane3:~/846156 (master) $ git push …
227 git  github 

8
当上游存在更改时,为什么git status显示分支是最新的?
跟踪分支的上游存在更改,但是当我键入git status时表明我的本地分支是最新的。这是新的行为吗,我是否更改了配置设置,还是出了点问题? 谢谢您的帮助。 ubuntu@host:/my/repo# git status On branch master Your branch is up-to-date with 'origin/master'. nothing to commit, working directory clean ubuntu@host:/my/repo# git pull remote: Counting objects: 11, done. remote: Compressing objects: 100% (11/11), done. remote: Total 11 (delta 6), reused 0 (delta 0) Unpacking objects: 100% (11/11), done. From …
226 git 

8
合并两个Git存储库而不破坏文件历史记录
我需要将两个Git存储库合并到一个全新的第三存储库中。我已经找到了许多关于如何使用子树合并来执行此操作的描述(例如,JakubNarębski关于如何合并两个Git存储库的答案),并且遵循这些说明大体上可行,除了当我提交子树时合并所有文件旧存储库中的文件记录为新添加的文件。当我这样做时git log,可以看到旧存储库中的提交历史记录,但是如果我这样做,git log <file>它只会显示该文件的一次提交-子树合并。从对以上答案的评论来看,我并不孤单地看到这个问题,但是我没有找到解决该问题的方法。 有什么办法可以合并存储库并保持单个文件的历史记录不变?
226 git  git-subtree 

8
如何以编程方式确定是否存在未提交的更改?
在Makefile中,如果有未提交的更改(在工作树或索引中),我想执行某些操作。最干净,最有效的方法是什么?在一种情况下以零返回值而在另一种情况下以零返回值的退出命令将适合我的目的。 我可以运行git status输出并将其通过管道传输grep,但是我觉得必须有更好的方法。
226 git 

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.