Tag: git新

CFURLCopyResourcePropertyForKey失败,因为它传递了这个没有scheme的URL:

我知道这是一个xcode的警告/错误,但是,当我尝试从命令行运行gitk –all时,就会发生这种情况。 YuFei-Zhus-MacBook-Pro:test phil88530$ gitk –all 2012-08-02 21:14:49.246 Wish[33464:707] CFURLCopyResourcePropertyForKey failed because it was passed this URL which has no scheme: 2012-08-02 21:14:49.252 Wish[33464:707] CFURLCopyResourcePropertyForKey failed because it was passed this URL which has no scheme: 2012-08-02 21:14:49.293 Wish[33464:707] CFURLCopyResourcePropertyForKey failed because it was passed this URL which has no scheme: 2012-08-02 21:14:49.295 Wish[33464:707] CFURLCopyResourcePropertyForKey […]

从另一个仓库Git拉

我有一个名为Generic的存储库,这是一个通用的应用程序。 我把它分成了一个名为Acme的仓库,它只是build立在应用程序存储的Generic仓库上,并向其添加Acme Co品牌。 如果我对Generic的核心function进行了更改,我想用我对Generic的核心function所做的最新更改来更新Acme存储库。 我该怎么做? 据我所知,我本质上是试图将上游存储库中所做的更改合并到当前分支中。 如果它意味着什么,我正在尝试这样做,因为我有一个通用的应用程序,然后我build立和个人客户端品牌(如本例中的Acme )。 如果有一个更清洁的方式,让我知道。

结合mingw和git

我在D:\ mingw中安装了MinGW 。 我有Git安装在C:\ Program Files \ git中。 我想使用MinGW进行开发/编译,并使用git进行版本控制。 我想我必须使用正确的path,但一些path是硬编码的。 像msys mount脚本调用/bin/msysmnt.exe 所以我有2个选项:1.使用git的shell(能够在提示符处显示分支)2.使用mingw(msys)的shell – 具有正确的path 无论select哪一个,我都必须使其他function在其下工作。

Ansible SSH私钥在源代码pipe理?

我已经开发了一个Ansible剧本几个星期,因此,我对这种技术的经验相对较短。 我的战略的一部分包括使用自定义的ansible_ssh_user在整个清单中configuration主机,但是,这样的用户将需要自己的SSH密钥对,这将涉及某种计划来保存/存储其对应的私钥。 在生产环境中,这个剧本将被克隆/拉出,并在某个剧本节点内运行, 剧本的作用是提供其余的基础设施。 起初,我只是想把这个私钥放在playbook git仓库里面,但是我还是有一些想法,主要是因为它有一些明显的安全原因和常识,所以我需要向你咨询一下这件事。 有了这个表,下面是后续问题: 在基于Ansible的开发环境中,在源代码控制中保存私有SSH密钥是否合理? 这种做法是否仅仅是针对开发环境而build议的,然后playbook节点中的另一个本地git分支将被用来保存实际的生产SSH私钥? 用Ansible Vault解决这个案例会更好吗?我以前从未使用过这个方法,但是不pipe如何,我还不能分辨这是否是使用它的适当情况。 根据你的经验,在生产环境中你会采取什么样的方法呢?在这个特定的情况下,最好的做法是什么?

如何用git gui做rebase?

我知道如何从命令行执行git rebase,但是如何与官方的git-gui配合使用呢?

Eclipse和EGit:如何在提交到* local * repository之前轻松地查看对所有已修改文件的更改

我正在使用Eclipse Indigo SR2(内置)EGit插件v.1.3.0.201202151440-r,并且在提交之前一直无法find任何方法轻松查看所有更改。 我用了SVN多年的Eclipse,而且总是很容易做到。 我通常会右键单击我的项目,selectTeam->Synchronize ,双击第一个更改的文件(在Team Sync透视图中),然后按Ctrl – 。 反复查看一个文件中的所有更改,然后继续下一个文件,因为我编写了对提交消息的更改摘要。 但是,当然,git和Subversion是完全不同的,所以我的工作stream程必须改变。 使用EGit,“Team Sync”仅用于查看本地文件和远程存储库之间的更改(即,在推送到远程之前)。 我需要一种方法来查看自上次提交到本地存储库以来所做的更改。 我通常甚至不关心(重新)审查变化之前推远程(如果我这样做,我更喜欢简单的等价的git log ,看看我将推动什么提交)。 如果我右键点击我的项目并selectTeam->Commit ,我会看到一个几乎可以做所有事情的窗口(select文件来分阶段,提交,写一个提交消息,修改以前的提交等) 。 它不允许我做的是快速轻松地在比较编辑器中查看所有的更改。 我不敢相信这个能力不存在! 似乎我需要双击每个单独的文件,检查更改,closures比较编辑器,然后双击下一个文件。 这是荒谬的! TL / DR – 我正在寻找一个简单的GUI等价物(在Eclipse中),使用git vimdiff (命令行中的vimdiff是一个使用vimdiff作为“difftool”循环的git别名所有修改后的文件),然后是git commit (可能是一个git add或两者之间的)。 如果没有人有一个好的解决scheme,我很好奇其他人如何处理他们提交工作stream与EGIT。 我已经从命令行相处得很好(不是说Eclipse对此感到高兴),但是我不能相信EGit和我看起来一样近乎无用。 也许我的google-fu没有以前那么强大?

如何从另一个分支`gitlogin'树?

比方说,我有一个分支A和分支B的Git回购。 分支B当前被检出(即.git/HEAD包含refs/heads/B )。 现在, 不检查分支A ,如何查看分支A的path/file的历史(日志)? 在git help rev-parse ,我试图使用git log A:path/file ,但似乎不起作用(不输出任何内容)。 为什么?

Git错误:以前的rebase目录.git / rebase-apply仍然存在,但给出了mbox

我试图申请一个补丁,我从http://www.winehq.org/pipermail/wine-devel/2014-May/104356.html 。 我把它复制到一个文本编辑器,并保存为my.patch (我需要修复电子邮件,它已被混淆)。 我试图用Git来应用它,但我得到这个错误: sashoalm@sashoalm-VirtualBox:~/Desktop/wine-git$ git am –signoff <my.patch previous rebase directory /home/sashoalm/Desktop/wine-git/.git/rebase-apply still exists but mbox given. 这个神秘的错误消息让我不知道什么是错的,或者我需要做些什么来使它工作。 这个错误是什么意思? 我该如何解决?

忽视git忽略与假设 – 不变

我已经阅读过几次这些文档,但是我仍然不完全明白这些不同命令之间的差异。 也许这只是我,但文件可以更清晰: http://git-scm.com/docs/gitignore https://help.github.com/articles/ignoring-files 而且,这个问题上的很多评论似乎都是用“索引”,“承诺”,“跟踪”这个词来略微松散一些,这就使得这三者之间的分歧不甚清楚。 我目前(固然有限)的理解: 在.gitignore匹配的文件将不会被跟踪。 (虽然他们以前可能已经被跟踪了。)这意味着他们将不会在未来的git status列表中显示出来。 但是,未来的变化仍然会与远程回购同步 。 换句话说,这些文件仍然被“索引”,但是它们不被“追踪”。 由于.gitignore文件位于项目目录中,因此文件本身可以进行版本控制。 在.git/info/exclude匹配的文件也不会被“跟踪”。 另外,这些文件不会被远程同步,因此绝不会被任何其他用户看到。 这些文件应该是特定于单个用户的编辑器或工作stream程的文件。 由于它位于.git目录中,因此exclude文件本身不能进行版本控制。 已经assume-unchanged运行的文件也不会在git status或git diff显示出来。 这与exclude似乎相似,因为这些文件既不是“索引”也不是“跟踪”的。 但是,在assume-unchanged之前要提交的最后一个版本的文件对于回购中的所有用户都将保持可见。 我的问题: 上述解释是否正确? 请纠正我 如果一个文件已经在一个提交中,那么匹配它在.exclude和运行assume-unchanged之间的function有什么不同? 为什么会更喜欢一种方法到另一个? 我的基本用例是,我想避免编译文件的差异,但我仍然希望这些编译的文件与源文件同步。 gitignore的d文件还会被推送吗? 如果没有,如何pipe理编译文件的最终部署? 在此先感谢您的帮助。

Windows上的msysgit – 我应该知道什么,如果有的话?

这与我最近问的另一个问题有关。 安装msysgit时,安装程​​序会提供3个与系统path相关的选项: 切勿改变Windows环境。 有了这个选项,你必须使用“bash”shell来使用git。 将git \ bin目录添加到PATH环境variables,但不覆盖一些内置的windows工具。 同伴stackoverflow-ian Gabe Moothart 在评论中告诉我 ,这个选项会让一些git操作失败! 这些操作是什么? 我应该担心吗? 与2相同,但是覆盖一些默认的系统工具。 这些工具是什么? 窗户的哪些部分依赖于它们? 这会在实践中伤害吗? 另一个问题出现在我脑海里,与系统PATH无关。 如果我的项目目录中有符号链接和硬链接怎么办? git知道如何处理这些? 或者,它会遭受无限的recursion,如果说,目录结构是这样的,一些文件夹实际上是其父母之一的符号链接?