Tag: 混帐

如何在Git历史logging中查找/识别大文件/提交?

我有一个300 MB的git回购。 我目前签出的文件重2 MB,git repo重298 MB。 这基本上是一个代码回购,不应该超过几MB。 最有可能的是,有人在某些意外事件(video,巨大的图像等)犯了一些沉重的文件,然后删除它们…但不是从混帐,所以我们有一个无用的大文件的历史。 我怎样才能追查在git历史上的大文件? 有400多个提交,所以去一个将是费时。 注意 :我的问题不是关于如何删除文件 ,而是如何find它的第一个地方。

如何在git中混淆命令?

我看到了某个人的屏幕录像 git st git ci 上class。 当我这样做,我得到一个错误,问我是否意味着别的东西。 作为一个新手,我需要知道你要做什么来完成这个工作?

如何克隆到非空目录?

我有目录A与文件匹配的目录B目录A可能有其他需要的文件。 目录B是一个git回购。 我想克隆目录B到目录A,但git-clone不会允许我,因为目录是非空的。 我希望它只是克隆.git,因为所有的文件匹配,我可以从那里去? 我不能克隆到一个空目录,因为我有目录A中不在目录B中的文件,我想保留它们。 复制.git不是一个选项,因为我想参考推/拉,我不想手动设置它们。 有没有办法做到这一点? 更新:我认为这个工作,任何人都可以看到任何问题? – > cd a git clone –no-hardlinks –no-checkout ../b a.tmp mv a.tmp/.git . rm -rf a.tmp git unstage # apparently git thinks all the files are deleted if you don't do this

我怎样才能移动一个标签在一个git分支到不同的提交?

我在名为v0.1的主分支上创build了一个标签,如下所示: git tag -a v0.1 但后来我意识到还有一些我需要合并到主版本0.1版本的变化,所以我做到了。 但是现在我的v0.1标签卡住了(调用便条纸比喻)错误的提交。 我希望它被困在最新的master提交上,但是却被困在了master的第二次提交上。 我怎样才能把它移到最近的主人提交?

在git repo和工作副本中强制LF eol

我有一个github上托pipe的git存储库。 许多文件最初是在Windows上开发的,对于行结尾我并不太在意。 当我执行初始提交时,我也没有任何gitconfiguration来执行正确的行尾。 结果是,我有一些CRLF行结束在我的github库中的文件。 我现在正在Linux上部分开发,我想清理线路结束。 我怎样才能确保文件在github上使用LF正确存储,并在我的工作副本中有LF? 我已经build立了一个包含text eol=LF的.gitattributes文件。 那是对的吗? 有了这个承诺和推动,我可以只是rm我的本地回购,并从github重新克隆,以获得预期的效果?

为特定的提交生成一个git补丁

我需要编写一个脚本来为SHA1提交编号列表创build补丁。 我尝试使用git format-patch <the SHA1> ,但是自从那个SHA1以来,每次提交都会生成一个补丁。 几百个补丁生成后,我不得不杀死这个进程。 有没有办法只为特定的SHA1生成补丁?

LF将被git中的CRLF取代 – 这是什么,它是重要的?

可能重复: 用CRLF代替LF 当我创build一个新的rails应用程序时,我在git中看到一个关于LFreplace的警告。 我做的git init git add。 然后繁荣! 我看到这几乎所有的文件popup。 我通常只是继续前进,并build立我的应用程序,并在文件的许多更改后消失。 例: 该文件的原始行结束在您的工作目录中。 警告:LF将被Gemfile中的CRLFreplace。 该文件的原始行结束在您的工作目录中。 警告:LF将被Gemfile.lock中的CRLF所取代。 该文件的原始行结束在您的工作目录中。 警告:在README中,LF将被CRLF取代。 LF和CRLF有什么区别? 我应该从长远的angular度来关心这个问题,还是忽略它,像往常一样继续下去?

git“更新当前检出分支”警告是什么意思?

当我做一个git推,我看到以下内容: warning: updating the currently checked out branch; this may cause confusion, as the index and working tree do not reflect changes that are now in HEAD. 我search了这个消息,我所能find的只是一个git邮件列表讨论 ,作者试图准确地决定如何使这个消息更好地传达给我,真正的问题是什么。 我是如何造成这种情况的?如何解决这个问题?

git diff显示不够

我想看看主分支和我的function分支之间的区别。 我有很多从主人拉到我的function分支,并希望看到如果我将我的function合并到主人将被添加的更改。 这是我的情况: -*–*–*—–*<master> \ \ \ 1–*–*–*–2–*<feature> 我的问题是git diff master feature似乎只显示提交编号2.我想看到一个github拉请求会显示差异,我相信是所有的方式提交1.我注意到git cherry显示我的提交我想看看有什么不同。 感谢您的任何build议。

使用适用于Windows的GitHub客户端在PATH中安装Git

如何在使用GitHub客户端的Windows时在我的PATH安装Git? 我遇到错误,因为显然Git没有安装在PATH中。 例如,使用Atom,试图安装Linter插件给出了这个错误: npm ERR! not found: git npm ERR! npm ERR! Failed using git. npm ERR! This is most likely not a problem with npm itself. npm ERR! Please check if you have git installed and in your PATH. 安装Git时,GitHub for Windows会安装吗? (它必须,否则它如何使用Git?)我不想双重安装它…那么我怎样才能将已经存在的Git添加到PATH?