We have situation where say we have four engineers that are working on software for custom hardware for linux. We would like to track the linux 3.3/3.4 kernel as closely as possible.
This is what we would like to do:
- Clone the git repo from, say git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
- Add a ‘companyremote’ that points to our internal git-server and create a branch say ‘devel’ is there something specific I need to be careful of when I create this devel branch on ‘companyremote’ git repo?
- All three developers will push the commits to this branch devel on companyremote.
- We would then rebase companyremote/devel branch origin/master (to move to latest kernel say 3.4-rc1, 3.4-rc2) And push that change to companyremote so all four engineers are now working with same base kernel source.
Does the above workflow sound correct if one wants to track top of the linux kernel but also have some type of internal branch/collaboration.
If there is document that describes this process better would appreciate a pointer.
I think you may need to clarify a little more.
Do the developers just need to track the latest changes of the linux kernel and ensure that they are all coding against the same baseline?
If this is the case you may want to look into using git submodules.
http://book.git-scm.com/5_submodules.html
The linux kernel would be the submodule in your projects git repository, and you decide the baseline that anyone who clones your project will see when they initialize that submodule. Maintaining the baseline is done by pulling changes from the remote linux kernel branch into your submodule, then commiting them and pushing the new baseline to your projects repository.