我刚刚为我的大部分项目开发了一个 ExtJS 基础框架。
我现在遇到的问题是我不知道如何使用 GIT,如何集中框架代码以便每个项目都可以共享该代码。
我想要的是所有特定项目都可以反映对框架基础代码所做的更改。
提前致谢。
我刚刚为我的大部分项目开发了一个 ExtJS 基础框架。
我现在遇到的问题是我不知道如何使用 GIT,如何集中框架代码以便每个项目都可以共享该代码。
我想要的是所有特定项目都可以反映对框架基础代码所做的更改。
提前致谢。
您可以使框架成为自己的存储库,然后让其他项目存储库将框架存储库添加为子模块。Git 子模块允许将 Git 存储库嵌套在其他 Git 存储库中。
这个系统有很多优点。首先,框架作为自己的存储库保留,这意味着它可以作为子模块添加到您想要的任意数量的其他项目存储库中。其次,作为自己的存储库,它可以单独更新和版本化,使框架与使用它的项目分开。
这里有关于 Git 子模块的更多信息:http: //git-scm.com/book/en/Git-Tools-Submodules
根据您的问题,我不确定您的项目是否使用(未修改)该框架(即您的项目依赖于该框架并将其用作库)或该框架是否用作您的项目的基础(即您的所有项目具有相同的结构,并且您想重用它)。
如果是第一个(框架是库),请参阅ilollars answer。
如果是第二个(框架是基础结构),您可以执行以下操作:将您的框架放在(中央)存储库中。当您开始一个新项目时,克隆您的框架存储库。您现在可以在这个新存储库中自由地做项目特定的事情。当您需要更改框架时,首先在您的框架存储库中执行此操作,然后将此更改合并到每个项目存储库。这里有一个例子:
cd framework
git init
# do your framework development
git add .
git commit
现在你有了你的第一个框架版本。然后从框架当前版本开始你的第一个项目:
cd ..
git clone framework project1
cd project1
# do work on your project
git commit
现在您需要更改框架中的某些内容:
cd ../framework
# do the changes
git commit
要将您的项目更新到新的框架版本:
cd ../project1
git pull
您现在拥有当前的框架版本,其中包含项目特定的更改 :-)