Git subtree和Git submodule】的更多相关文章

git submodule允许其他的仓库指定以一个commit嵌入仓库的子目录. git subtree替代git submodule命令,合并子仓库到项目中的子目录.不用像submodule那样每次子项目修改了后要init和update.万一哪次没update就直接"commit -a" 或者 "add ." 全commit上去就悲剧了. git subtree虽然比git submodule更好用,但也不是特别完美的解决方案,使用时一定要特别注意. git-su…
如果你的项目中有很多第三方的lib,你希望使用它,并且也希望可能对该lib做修改并且贡献到原始的项目中去,或者你的项目希望模块化,分为几个repo单独维护,那么git subtree就是一个选择.git subtree管理的子项目在父项目中作为一个完整的代码copy存在,并不包含历史信息.综合考虑git subtree和git submodule的优缺点,一个可行的管理策略是:使用git subtree对父项目(在该父项目中可以临时将子项目文件夹加入到tracking中)做split,将需要单独…
移动互联网的爆发以及响应式页面的尴尬症,开发web和mobile项目成为了标配,当然实际情况下,会有更多的项目. 多项目开发对于前端来说是个很大的挑战✦ 重复,重复的前端架构,重复的前端依赖,重复的工具函数等✦ 局限,不同后台有不同的规则,“因地制宜”真难受,刚伺候好rails又突然来个php✦ 最优,后台工程做前端构建,总是显得不够“最优”. 所以,我们需要单独抽离出前端开发项目,按照前端的方式来组织代码,通过构建工具来对前端资源文件做最优处理那么新问题来了,如何管理这个快速迭代,频繁更新的前…
前言 前情提要:Git应用详解第九讲:Git cherry-pick与Git rebase 一个中大型项目往往会依赖几个模块,git提供了子库的概念.可以将这些子模块存放在不同的仓库中,通过submodule或subtree实现仓库的嵌套.本讲为Git应用详解的倒数第二讲,胜利离我们不远了! 一.submodule submodule:子模块的意思,表示将一个版本库作为子库引入到另一个版本库中: 1.引入子库 需要使用如下命令: git submodule add 子库地址 保存目录 比如: g…
这个是备忘录.原网页(https://medium.com/@porteneuve/mastering-git-subtrees-943d29a798ec , http://cncc.bingj.com/cache.aspx?q=master+git+subtree&d=5034897297048421&mkt=zh-CN&setlang=en-US&w=LLr-ePxnq8vxmyPDrHjzRWkbxVPwbcO4)被gfw墙,从cache中复制过来的,以备忘. Mas…
原文:http://aoxuis.me/post/2013-08-06-git-subtree 使用场景 例如,在项目Game中有一个子目录AI.Game和AI分别是一个独立的git项目,可以分开维护.为了避免直接复制粘贴代码,我们希望Game中的AI子目录与AI的git项目关联,有3层意思: AI子目录使用AI的git项目来填充,内容保持一致. 当AI的git项目代码有更新,可以拉取更新到Game项目的AI子目录来. 反过来,当Game项目的AI子目录有变更,还可以推送这些变更到AI的git项…
subtree出现,是为了取代submodule http://wenku.baidu.com/link?url=ola85Z5tIXJpxCjLTk-dcO81ayXLs68_y6dsmXIa0niF8vWlnAtnEEiZTGlzCNk1G_g36UYNHUBpu9oszONFNB54LNzo3rX7W_ULJg-P-eG Using Git subtrees to split a repository  使用git subtree来拆分一个版本库 Splitting a subfolder…
git subtree用法 一.使用场景 例如,在项目Game中有一个子目录AI.Game和AI分别是一个独立的git项目,可以分开维护.为了避免直接复制粘贴代码,我们希望Game中的AI子目录与AI的git项目关联,有3层意思: 1.AI子目录使用AI的git项目来填充,内容保持一致. 2.当AI的git项目代码有更新,可以拉取更新到Game项目的AI子目录来. 3.反过来,当Game项目的AI子目录有变更,还可以推送这些变更到AI的git项目. 用git subtree可以轻松满足上面的需求…
语法:git subtree split -P <被裁减的目录> -b <分支> git subtree split -P SDK/CustomUI(需要裁减的) -b CustomUI-2(裁减到得分支) 语法:git subtree add --prefix=<子目录名> <子仓库名> <分支> --squash git subtree add --prefix=SDK/CustomUI(关联) /work/Que/Qupai/Android…
git subtree 是不错的东西,用于 git 管理子项目. 本文记录我遇到问题和翻译网上的答案. 当我开始 pull 的时候,使用下面的代码 git subtree pull --prefix=<本地子项目目录> <远程库仓库地址 | 远程库别名> <分支> --squash 其中--squash 参数是把子项目的记录合成一次 commit 提交到主项目,这样主项目只是合并一次 commit 记录. 但是在我执行这句代码的时候,出现下面的错误 Working tr…