Search code examples
gitcodeignitercodeigniter-2

Git environment for CodeIgniter project


I'm starting of with a new CI project based on the CI 2.0 Reactor repository. Because the CI2 code is still changing, I would like to keep that code fresh, the question is how (using Git).

For the non-CI folks, the basic structure of a CI2 project looks like this:

system/  
application/  
index.php
...

The system directory contains the framework, index.php does the bootstrapping and application contains my project. Ideally, I would like to keep both index.php and the system folder up-to-date using Git. Another thing I would like to adhere to is name of the application folder. (You can change the path of your application folder in index.php.) Keeping the name the same makes it possible to just drop in the folder, and off you go.

I've tried to realize this by using git submodules (see below), but submodules don't let you specify a directory from the target repository.

git submodule add https://github.com/philsturgeon/codeigniter-reactor.git/code-igniter/system system

Any clue how I can achieve this?


Solution

  • Sadly you cannot reference a specific folder in a sub-module, only the root of the sub-module itself. That would mean you need to put your application in a sub-folder, which would be crap.

    You can however just set up two remotes on your Git application.

    git init
    git remote add origin git://whatever
    git remote add reactor git@github.com:philsturgeon/codeigniter-reactor.git

    Then update with reactor changes

    git pull reactor master
    git push origin master

    Remember that this clone is really intended to help people get their CodeIgniter Reactor changes int without needing to learn Mercurial, but you are welcome to use it as long as it exists.