当使用git checkout切换分支时,我会假定大部分时间你都想更新你的子模块。 在什么情况下,你不想在切换后更新子模块? 如果这是通过git checkout自动完成的,会破坏什么? 以例子更新: 分支A在3852f1具有子模块S. 分支B在fd72d7有子模块S. 在分支A上,git checkout B将产生分支B的工作副本,子模块S在3852f1(带有修改的S)。 git子模块更新将在fd72d7结帐。
我正在考虑使用GitHub作为我们的代码审查的主要工具。 像在线评论和比较视图这样的function,似乎有许多像Gerrit这样的工具提供的function。 有其他人使用过GitHub吗? 如果是这样,你的工作stream程是什么? 你有什么经验这样做,正面和负面? 当我对此有所了解,并理清什么最适合我们时,我将编辑我的问题,分享我自己的build议工作stream程。 编辑build议的工作stream程 步骤0.使用awesome reviewth.is 设置一个post-receive hook 。 然后: 像平常一样commit -a -s ,但在提交消息中追加#reviewthis @username 。 如果构build失败,则审阅将被跳过,直到构build被恢复。 审阅者对逐行或在文件级别进行提交的评论。 GitHub会自动通知评论的评论者。 审阅者通过电子邮件通知审阅者,当评论与审阅摘要一起完成时。 Reviewee回复GitHub中的评论者评论,允许项目访问代码评论的历史logging。 我最大的问题是步骤2和步骤4/5。 Gerrit很好地工作,除非构build成功,否则不要求评论; 我想在GitHub中做到这一点。 步骤4/5也有可能让人讨厌(多封电子邮件),并减less审查过程的自动性(需要通过电子邮件发送摘要)。 如果有帮助,我们使用Hudson作为我们的构build服务器。 对这些问题的任何想法也会有所帮助。
有没有什么办法可以设置git,以便它侦听来自远程回购的更新,并且在有变化的时候将会收到更新? 用例是我想要部署一个使用git的web应用程序(所以我得到了部署的应用程序的版本控制),但是想把“中央”的git仓库放在Github上,而不是在web服务器上(Github的界面太好了) 。 有没有人得到这个工作? Heroku如何做呢? 我的Google-fu没有给我任何相关的结果。
当我启动git rebase -i ,我可以发出诸如git rebase –continue或git rebase –abort 。 这些命令只有在进行重新绑定时才有效。 我怎样才能知道是否有一个正在改变? (我将非常感谢一些关于rebase如何在内部工作的细节; git对回购有什么作用,使它具有“正在进行中的rebase”状态,?)
我有一个桌面应用程序使用git进行同步。 我也有一个android应用程序,做的桌面相同,但我不知道如何做它的同步部分。 我还没有发现在Android上的任何实施的git。 我find了一个jgit,但是它的logging不完整,我甚至无法做到这一点。 我正在考虑从我的android应用程序到我的git服务器的远程命令,但这对我来说真是一个挑逗。 你能告诉我,如果有任何其他可以在Android上使用的git实现存在? 如果你有任何想法如何解决,请告诉我。
我已经改变了git仓库中的几个文件,但还没有提交。 我可以通过调用git status来获得更改列表。 但是,除了文件名之外,如何获得已更改的行或内容列表? 我最初考虑使用git diff ,但它似乎只用于比较已经提交的更改。 通常我只是做meld . ,但在这种情况下,我通过SSH连接到外部服务器。
我正在使用VS2017CE,并已login到我的Microsoft帐户,并已连接到VSTS。 我可以看到我所有的项目和存储库,但是当我试图拉/取/推任何更改时,我得到以下错误: Error encountered while pushing to the remote repository: Git failed with a fatal error. PushCommand.ExecutePushCommand 对于取指和拉取命令也是如此。 我在VS2017安装程序上安装了Git for windows,不仅没有VSTS的工作,我也无法使用我的任何Github存储库。 有没有其他人注意到这一点? 到目前为止,这是发生在我的两台机器上。 VS2015EE和CE对我来说工作得很好。 编辑:这个问题似乎已经得到了更多的认可,我认为这会导致我相信这是VS如何处理Git的问题。 我也注意到,每次我更新Visual Studio时,这个问题都会popup来,我必须通过下面一些答案中的步骤来让Git重新工作。 我不确定为什么会这样,我也不知道微软是否打算解决这个问题。
我一直在使用git flow 。 我很想了解一个具体的用例。 对于我的一个项目,我有一个新的网站function的票。 这张票取决于许多子任务。 我想创build一个主票的function分支,然后为每个子任务创build一个function分支的父function分支。 假设我有一张票PROJ-500,我为它创build了一个function分支 git flow feature start PROJ-500 然后我想把PROJ-501通过PROJ-515整合到PROJ-500然后把整个事情整合到develop 。 有没有办法让我做类似的事情? git flow feature start PROJ-511 -b PROJ-500 然后加class这些子任务完成,当他们的function完成后,分支合并到PROJ-500 。 git flow feature finish PROJ-511 上述命令将PROJ-511合并到PROJ-500 一旦所有子任务完成, PROJ-500将完成并合并develop 。 这样,新的网站function被集成到一个单一的开发,而不是零碎。
我有一个由npm install命令生成的文件(使用preinstall任务)。 我不想把它添加到git仓库中,也不在NPM项目中。 假设文件名是foo.json ,我将它作为foo.json添加到.gitignore文件中。 这是否足以避免上传到NPMregistry? 我知道我可以添加.npmignore文件,肯定会忽略该文件,但我不会添加它,如果.gitignore已经这样做。
我正在使用Eclipse的git插件。 我的一些文件标有棕色星号。 这是什么意思? 在哪里可以find剩余的git图标在Eclipse中的含义的文档? 替代文字http://i48.tinypic.com/fna7ex.jpg