当你使用语法来做你的第一个克隆 git clone username@server:gitRepo.git 是否有可能使用您的本地存储库来查找该初始克隆的名称? (所以在上面的例子中findgitRepo.git)
我正在为Linux Git检查一个rich GUI 。 最近我开始大量使用它,发现即使命令行非常有用,我仍然需要一个GUI来处理,因为我对这些高级function还不是很了解。 我之前遇到过这个问题 ,但是我还是要再次提出这个问题,因为这个问题没有我的答案 我已经使用了git-cola和gitk ,但是它们看起来不完整,gitk看起来像我在其他一些DE上工作。 我在gitGUI中需要的所有function都不在其中。 我尝试了giggle ,但是看差异更有用 我试过QGit ,但还不完整。 现在让我告诉我如何让一个foo-Git-GUI看起来像这样: 您可以看看Bzr Explorer ,它比以上提到的许多GUI都具有很高的可用性和许多特性 任何人都知道任何Git GUI,看起来像上面我张贴上面的例子?
所以我想比较这个文件夹 http://cloudobserver.googlecode.com/svn/branches/v0.4/Boost.Extension.Tutorial/libs/boost/extension/与这个 http://svn.boost.org/svn/boost/sandbox/boost/extension/ 。 我想得到一个diff文件作为结果。 这些文件夹是在svn控制下,但我更喜欢git样式的diff文件(就像这里显示的一样)我尝试了git diff但似乎没有为web文件夹工作。 那么如何用Linux上的一个命令做同样的事情呢? 更新:所以我们有一个很好的答案 。 但奇怪的是,这似乎表明,所有的文件(相同的文件)的所有内容被replace为非常相同的内容(虽然我确信只有3-4条代码行被改变)。 更新2:为了实现我真正需要的(只有真正改变的行,使用git样式,在Linux上): $ svn export http://cloudobserver.googlecode.com/svn/branches/v0.4/Boost.Extension.Tutorial/libs/boost/extension/ repos2 –native-eol CRLF $ svn export http://svn.boost.org/svn/boost/sandbox/boost/extension/ repos –native-eol CRLF $ git diff repos repos2 > fileWithReadableDiff.diff
这是我的.gitmodules文件的一部分内容: [submodule "src/static_management"] path = src/static_management url = git://github.com/eykd/django-static-management.git [submodule "external/pyfacebook"] path = external/pyfacebook url = http://github.com/sciyoshi/pyfacebook.git 但是, .git/config只包含第一个: [submodule "src/static_management"] url = git://github.com/eykd/django-static-management.git 第二external/pyfacebook模块( external/pyfacebook )是由另一个开发人员添加到特性分支中的。 我已经inheritance了开发,并已经检查了function分支。 但是,Git不会为我抽取子模块。 我试过了: git submodule init git submodule update git submodule update –init git submodule sync 从.git/config删除所有子模块定义并运行git submodule init 。 它只复制以前存在的子模块而忽略新模块。 在.git/config手动input新的子模块定义并运行git submodule update 。 只有以前存在的子模块才会更新。 但是git根本不会更新基于.gitmodules的新内容的.git/config ,也不会创buildexternal/pyfacebook文件夹并且拉取子模块的内容。 […]
我不小心运行命令对我的存储库中的错误分支 – 有没有办法来撤消这个改变?
我正在使用Git子树与我正在处理的几个项目,以便在它们之间共享一些基本代码。 基本代码经常更新,升级可能发生在任何项目中,最终所有项目都会得到更新。 我遇到了一个问题,git报告我的子树是最新的,但推送被拒绝。 例如: #! git subtree pull –prefix=public/shared project-shared master From github.com:**** * branch master -> FETCH_HEAD Already up-to-date. 如果我推,我应该得到一个信息,没有什么可推…对吗? 对? 🙁 #! git subtree push –prefix=public/shared project-shared master git push using: project-shared master To git@github.com:*** ! [rejected] 72a6157733c4e0bf22f72b443e4ad3be0bc555ce -> master (non-fast-forward) error: failed to push some refs to 'git@github.com:***' hint: Updates were rejected […]
我设法在我的本地git仓库中创build一个小混乱。 我试图通过使用以下说明修复一个损坏的提交。 在运行“git commit –amend”(和git rebase –interactive之前)之前,我确定我的更改是不正确的,所以我执行了“git reset HEAD –hard”。 不是一个好主意,我告诉你。 现在互动式的重组似乎被“卡住”了。 Git将当前分支显示为(| REBASE-m)。 存储库中的每个命令(cd ..,ls,git rebase …)都会给出以下错误: cat:.git / rebase-merge / head-name:没有这样的文件或目录 下面是git rebase –abort的样子: $ git rebase –abort cat: c:/_work/project/src/git/.git/rebase-merge/quiet: No such file or directory cat: c:/_work/project/src/git/.git/rebase-merge/head-name: No such file or directory cat: c:/_work/project/src/git/.git/rebase-merge/orig-head: No such file or directory HEAD is now at […]
我一直在使用git大约一年,并希望使用标记来标记不同版本的提交。 我已经find了许多有关使用标签的命令的信息,但是我想知道的是,为什么要使用标签呢?如果我可以创build一个名为1.1.0的新分支,而不需要我的脑子有一套全新的git命令? 标记而不是分支必须有很多好的理由,但我想知道这些优点是什么。
有没有简单的方法来编写可以访问其Git版本哈希的C代码? 我用C编写软件来收集实验室的科学数据。 我的代码logging了它收集在.yaml文件中的数据,以供以后分析。 我的实验每天都在变化,我经常需要修改代码。 为了跟踪修订,我使用了一个git仓库。 我希望能够在我的.yaml数据文件中包含Git修订哈希作为注释。 这样,我可以查看.yaml文件,并确切知道用什么代码生成该文件中显示的数据。 有没有一种简单的方法来自动做到这一点?
我只是好奇,哪里Git安装(通过DMG)在Mac OS X文件系统?