On 3 June 2015 at 11:50, Gao, Liming <liming....@intel.com> wrote: > Hi, all > > Now, EDKII project Git mirror is ready in GitHub > (https://github.com/tianocore). There are EDKII project Repo and each > package Repo. After migrate EDKII from SVN to GitHub, EDKII Git Repo will be > writable, EDKII SVN project will become mirror. I expect to keep write > access in the centralized Git repo. But, EDKII project Repo (edk2) and > MdePkg Repo (edk2-MdePkg) includes the same source code. So, only one of > them will be writable. My proposal is to make Package Repo be Read & Write, > and update EDKII project to link each package by submodule way. The benefit > of this way is: > > 1. EDKII project is too big. After separate them, the developers can > just pull their used packages instead of full. > > 2. The different packages have the different owners. After separate > them, the package owner can give write access for the different developers. > > 3. Close source project can refer to EDKII packages. Those project can > be easily setup by git submodule. >
Please no. Git submodules add a layer of complexity that we can really do without. As others have pointed out, this will nullify some of the benefits of using Git, like light-weight local branches and bisectability. In fact, I would personally prefer staying with SVN over switching to this particular implementation of Git. Could you elaborate on what are the perceived issues with the existing tianocore/edk2.git? IMO it's working perfectly fine, but if there are any issues, let's discuss them and works towards a solution. Regards, Ard. > Compared to EDKII project Repo, submodule EDKII project Repo just includes > edksetup.bat, and edksetup.sh. Some BKM of submodule is shared here. > > 1. Every Git operation is took for Package Repo. Pull, Branch, Commit, > Create Patch, Fork, and Pull Request are all for Package Repo. If your patch > changes multiple packages, you need to commit and create patch per Package. > > 2. git submodule foreach “command” can be used to run command on every > package, for example git submodule foreach "git pull" > > > > Thanks > > Liming > > > ------------------------------------------------------------------------------ > > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/edk2-devel > ------------------------------------------------------------------------------ _______________________________________________ edk2-devel mailing list edk2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-devel