Tag: 混帐

使'git日志'忽略某些path的变化

我怎样才能使git log只显示更改的文件,而不是我指定的提交? 使用git log ,我可以过滤提交给那些碰到给定path的提交。 我想要的是反转该filter,以便只提交触摸path以外的指定的将被列出。 我可以得到我想要的 git log –format="%n/%n%H" –name-only | ~/filter-log.pl | git log –stdin –no-walk filter-log.pl是: #!/usr/bin/perl use strict; use warnings; $/ = "\n/\n"; <>; while (<>) { my ($commit, @files) = split /\n/, $_; if (grep { $_ && $_ !~ m[^(/$|.etckeeper$|lvm/(archive|backup)/)] } @files) { print "$commit\n"; } } 除了我想要比这更优雅的东西。 请注意,我不问如何让git忽略这些文件。 […]

在git中克隆远程仓库时,无法parsing主机github.com错误

我做了什么:我已经在Github上创build了一个远程仓库,我试图克隆我的本地机器上的远程仓库。 克隆时,我提供克隆URL&目标文件夹。 但每次我尝试克隆,我得到这个错误: 错误:“致命:无法访问' https://github.com/hyperion057/spring-repo.git/ ':无法parsing主机:github.com” 我需要做什么来连接到GitHub?

.gitignore忽略所有文件,然后recursion地允许* .foo

已经有几个类似的问题,但没有答案为我工作。 我想忽略文件夹下面的文件夹中的所有内容,除了带有* .foo的文件 (如果有人想知道这是如何合理的 – 我实际上是为我所有的“逻辑”项目制作git仓库 – mac上的音乐软件 – 但我只想存储实际的项目文件* .logic) 我要拼出来,所以我们都在同一个盘子上。 以下是我从头开始做的事情: build立: mkdir temp cd temp mkdir testdir cd testdir touch include.foo touch dontinclude.bad cd.. git init touch .gitignore 将其粘贴到.gitignore中 # Ignore all /* # But not these files… !.gitignore !*.foo git状态 而唯一未跟踪的文件是.gitignore 如果我input“git add”。 – 没有改变,只有.gitignore被看到,我的2个文件被忽略。 为什么这不起作用,你怎么能改变上面的程序,使其工作? 这里是我得到.gitignore文件的极其类似的问题。 我使用git –version 1.7.7(也试过1.7.3) – […]

我怎样才能从git仓库中完全删除文件?

我最近注意到我的文本编辑器使用的项目文件(以及其他一些垃圾)已经添加了项目的git仓库。 由于它们实际上并不是项目的一部分,所以我想删除它们,但是git rm不会从存储库中删除旧版本,而且我也找不到任何看起来很有希望的东西。

为什么混帐说“拉不可能,因为你有没有文件”?

当我尝试拉入我的项目目录在terminal中,我看到以下错误: harsukh@harsukh-desktop:~/Sites/branch1$ git pull origin master U app/config/app.php U app/config/database.php U app/routes.php Pull is not possible because you have unmerged files. Please, fix them up in the work tree, and then use 'git add/rm <file>' as appropriate to mark resolution, or use 'git commit -a'. 为什么git说"Pull is not possible because you have unmerged files" ,我该如何解决?

如何在git中合并子目录?

是否有可能只合并一个子目录的变化从本地git分支到远程git分支,还是“全部或全部”? 例如,我有: branch-a – content-1 – dir-1 – content-2 和 branch-b – content-1 – dir-1 – `content-2 我只想合并branch-a dir-1的内容和branch-b dir-1的内容。

Git中的commit和ish是什么?

问题 Git中的commit-ish和tree-ish的具体示例是什么? 堆栈溢出问题“tree-ish在git中意味着什么? 专门处理tree-ish,但我想更多地了解这两者 。 背景 用于文档 Git文档对“commit-ish”和“tree-ish”做了几处引用。 例如,如果您正在检查Git源代码 : $ git grep –files-with-matches –extended-regexp "commit(-)*ish" config.txt git-describe.txt git-fast-import.txt git-name-rev.txt git-push.txt git-rebase.txt git-rev-parse.txt git.txt gitcli.txt glossary-content.txt howto/revert-branch-rebase.txt revisions.txt 和 $ git grep –files-with-matches –extended-regexp "tree(-)*ish" | \ $ grep –invert-match RelNotes diff-format.txt diff-generate-patch.txt git-archive.txt git-cat-file.txt git-checkout.txt git-diff-index.txt git-diff-tree.txt git-ls-files.txt git-ls-tree.txt git-merge-tree.txt git-read-tree.txt git-reset.txt git-svn.txt git.txt […]

Github:错误克隆我的私人存储库

我正在尝试使用https-URL克隆我的GitHub项目,但是失败并显示错误消息: $ git clone https://foo@github.com/foo/foo-private.git Cloning into foo-private… Password: error: error setting certificate verify locations: CAfile: /bin/curl-ca-bundle.crt CApath: none while accessing https://foo@github.com/foo/foo-private.git/info/refs fatal: HTTP request failed 我究竟做错了什么?

如何以编程方式确定是否存在未提交的更改?

在Makefile中,如果有未提交的更改(在工作树或索引中),我想执行某些操作。 什么是最干净和最有效的方式来做到这一点? 一个返回值为零,另一个返回值为非零的命令将适合我的目的。 我可以运行git status并通过greppipe道输出,但我觉得必须有更好的方法。

如何从GitHub下载ZIP格式的源代码?

我看到一些奇怪的东西: http://github.com/zoul/Finch.git 现在我不是CVS,SVN等等。 当我在浏览器中打开它时,它告诉我我做错了什么。 所以我打赌我需要一些黑客风格的工具? 有些客户? (我的意思是…为什么不只是提供一个ZIP文件?世界不够复杂吗?)