Tag: git新

我怎样才能格式化补丁与我藏起来的东西

在混帐,我藏起我的变化。 有可能我可以用我藏起来的东西创build一个补丁吗? 并在其他一些存储库(我的同事)的补丁应用? 我知道'git format-patch-1',但我认为这是为了我所承诺的。 但是我正在寻找同样的东西来改变我藏起来的东西? 我怎样才能在其他仓库中应用补丁?

没有.git目录的Git克隆

可能重复: 如何做一个“混帐出口”(如“SVN出口”) 是否有一个标志传递给克隆做克隆,说不克隆.git目录? 如果没有,如何.git后删除.git目录的标志?

如何得到差异工作像git差异?

我喜欢git-diff的输出格式。 颜色选项和行间变化的+/-表示比标准的GNU diff更容易阅读(恕我直言)。 我看到,我可以在git仓库之外的两个文件或目录上运行git diff,并且工作正常。 但是,它似乎缺less“–exclude”选项从recursiondiff中排除文件或子目录。 我想知道是否有办法让两全其美? (即,颜色选项和git-diff的+/-格式, – 排除GNU diff的选项)。 我已经尝试了colordiff ,但我仍然喜欢git-diff的输出格式。

你如何重新分配当前分支的变化,在合并的变化之上?

好的。 如果我在一个分支上(比如working ),而且我想合并来自另一个分支(比如master )的更改,那么我在working分支上运行命令git-merge master ,并且在没有合并的情况下根本不重视历史。 如果我运行git-rebase master ,那么master中的变更将被重新设置为放在我的working分支的顶部。 但是,如果我想合并来自master的变更,但是将我的变更重新设置为最高? 我怎么做? 可以这样做吗? 我可以在master分支上运行git-rebase working来将我的更改放在master分支上,但是我希望能够在我的working分支中做到这一点,而我不知道如何实现。 我能想到的最接近的是从master创build一个新的分支,然后重新working的变化,然后我会有一个新的分支,而不是改变working分支。

GIT与Perforce-两个VCS将进入…一个将离开

所以我正在把GIT卖掉。 我需要的第一件事就是让每个人都相信,GIT在他们已经习惯的方面做得更好。 我们目前使用Perforce。 其他人经历了类似的销售? 任何好的链接/build议? 其中一个重大胜利就是我们可以使用与networking断开的连接。 另一个赢得国际海事组织是方式添加/结帐处理。 多点欢迎! 另外我们总共有10-20个开发者。

使用git仓库作为数据库后端

我正在做一个处理结构化文档数据库的项目。 我有一个类别树(〜1000个类别,每个级别最多〜50个类别),每个类别包含数千个(最多约10000个)结构化文档。 每个文档都是几千字节的数据(我更喜欢YAML,但也可能是JSON或XML)。 这个系统的用户执行几种types的操作: 通过ID检索这些文件 通过内部的一些结构化属性来search文档 编辑文档(即添加/删除/重命名/合并); 每个编辑操作都应该logging下来,并附带一些注释 查看logging的特定文档更改的历史logging(包括查看谁更改了文档,何时更改以及为什么更改文档,获取更早的版本 – 如果需要,可能还原为这一版本) 当然,传统的解决scheme是使用某种文档数据库(比如CouchDB或者Mongo)来解决这个问题 – 然而,这个版本控制(历史)的东西引起了我一个疯狂的想法 – 为什么我不应该使用git仓库这个应用程序的数据库后端? 乍一看,可以这样解决: category =目录,document =文件 通过ID获取文档=>更改目录+读取工作副本中的文件 用编辑注释编辑文档=>由各种用户进行提交+存储提交消息 历史=>正常的git日志和旧的交易的检索 search=>这是一个稍微棘手的部分,我想这将需要一个类别定期导出到关系数据库索引的列,我们将允许search 这个解决scheme还有其他常见的缺陷吗? 有没有人试图实现这样的后端(即任何stream行的框架 – RoR,node.js,Django,CakePHP)? 这个解决scheme是否对性能或可靠性有任何可能的影响 – 也就是说,git会比传统的数据库解决scheme慢得多,否则就会有可扩展性/可靠性的缺陷? 我认为,推送/拉对方存储库的这种服务器集群应该相当健壮和可靠。 基本上,告诉我, 如果这个解决scheme将工作, 为什么会或不会做?

如何永久禁用Visual Studio 2013中的Git集成?

我知道你可以通过使用工具/选项对话框禁用Git集成,但我注意到这个设置似乎并没有持续在会话中; 即,一旦closures并重新打开解决scheme,Git集成将再次启用。 我猜Visual Studio正在我的解决scheme文件系统树中看到.git文件夹。 有许多Visual Studio 2013插件在启用Git插件时performance不正确,我更喜欢在命令行上pipe理我的源代码pipe理,而且我也参与了几个非常大的项目,Git集成引入了明显的减速在开放和解决scheme的工作。 我想把它关掉,因为我根本不使用它或需要它。 这可能吗?

改变Git远程'推到'默认

我想更改Git的默认远程分支目标,所以我可以 git push 代替: git push upstream 目前这是设置为远程原点,我想将其设置为不同的远程。 我试图删除原始(克隆)远程 git remote rm origin 哪个删除了原来的遥控器。 但是并没有解决git push问题。 我仍然得到: 致命的:没有configuration的推送目的地。 从中指定URL 命令行或configuration远程存储库使用… 我也试着玩: git remote set-url –push myfork origin 和其他选项,但似乎没有工作(也许是因为我太早删除起源远程?) 在这里的答案我试图改变: git config push.default upstream (or matching) 但都没有工作。

Git比较与超越

我已经成功地让git启动Beyond Compare 3作为diff工具,但是当我做一个diff时,我正在比较的文件没有被加载。 只有最新版本的文件被加载,没有别的,所以在Beyond Compare的右窗格中没有任何东西。 我正在用Cygwin和Beyond Compare 3运行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 有没有其他人遇到这个问题,并知道这个解决scheme? 编辑: 我遵循了VonC的build议,但是我仍然遇到和以前完全相同的问题。 我有点新Git所以也许我没有正确使用diff。 例如,我试图用类似这样的命令在文件上看到diff: git diff main.css 超越比较然后打开,只显示我的当前main.css在左窗格中,右窗格中没有任何东西。 我希望看到我的当前main.css在左侧窗格相比,头,基本上是我最后承诺。 我的git-diff-wrapper.sh看起来像这样: #!/bin/sh # diff is called by git with 7 parameters: # path […]

如何将“git checkout”别名为“git co”?

我希望命令git co与inputgit checkout相同。 正常的bash别名( alias co='checkout' )不起作用。