Codeigniter项目的GIT环境
-
13-10-2019 - |
题
我从一个基于新的CI项目开始 CI 2.0反应堆存储库. 。由于CI2代码仍在更改,因此我想保持该代码新鲜,因此问题是(使用GIT)。
对于非CI人来说,CI2项目的基本结构看起来像:
system/
application/
index.php
...
系统目录包含框架,index.php进行引导程序,并且应用程序包含我的项目。理想情况下,我想使用GIT保留最新的index.php和系统文件夹。我想遵守的另一件事是应用程序文件夹的名称。 (您可以在index.php中更改应用程序文件夹的路径。
我试图通过使用 git子模型 (请参阅下文),但是子模型不能让您从目标存储库中指定目录。
git submodule add https://github.com/philsturgeon/codeigniter-reactor.git/code-igniter/system system
有什么线索我如何实现这一目标?
解决方案
可悲的是,您不能在子模块中引用特定文件夹,只有子模块本身的根。这意味着您需要将您的申请放入子文件夹中,这是废话。
但是,您只需在GIT应用程序上设置两个遥控器即可。
git init
git Remote添加Origin git://任何
git远程添加反应堆git@github.com:philsturgeon/codeigniter-reactor.git
然后更新反应堆更改
git拉动反应堆大师
git推出原点大师
请记住,这个克隆确实旨在帮助人们在无需学习Mercurial的情况下进行Codeigniter Reactor Change Int更改INT,但是只要存在它,您欢迎您使用它。
其他提示
我也偶然发现了同样的问题。
我真的希望使用Git将CodeIgniter Core带入应用程序,而无需复制并每次粘贴更新!使用GIT子模型有很多优势(并且使用GIT已经知道)。
所以我这样做了:
mkdir yourapp
cd yourapp
git init
git sudmodule add git://github.com/EllisLab/CodeIgniter.git codeigniter
mkdir public
cp codeigniter/index.php public/
cp -rp codeigniter/application .
现在编辑public/index.php并更改:
$system_path = 'system';
至:
$system_path = '../codeigniter/system';
和:
$application_folder = 'application';
至:
$application_folder = '../application';
现在,将您的网络服务器指向您的“公共”文件夹,并且已经完成了!现在,您有一个带有Codeigniter的项目作为子模块:)
对于这样的事情,我手动更新它们并检查冲突。
对您的问题不是一个真正的答案,但总的来说,信任更改第三方项目不是一个好主意:更新可以在不警告的情况下打破您的应用程序。我建议不时时手动更新它,并在更新后测试您的应用程序。这样,您的应用程序突然中断就不太可能发生。
我从来没有遇到过一个项目或框架,在该项目或框架中,您可以将框架核心保存在github存储库中,也不会直接通过另一个存储库将其拉入。您应该依靠作曲家来实现这样的事情。