diff options
author | Yujun Zhang <zhang.yujunz@zte.com.cn> | 2017-03-03 22:37:05 +0800 |
---|---|---|
committer | Yujun Zhang <zhang.yujunz@zte.com.cn> | 2017-03-07 03:28:42 +0000 |
commit | aa0724200ae8d7ed532a313f5c3e45c7f99e64ea (patch) | |
tree | 028ef9794b4a5cde07bc10645fb1cbc961b16f4f | |
parent | 391f422191bdb4f2a81664cf8c4a4382380da123 (diff) |
Add `subrepo` basic usage in developer guide.
Change-Id: I4e066d91c9d0775ba698584f561cce997d60ad6b
Signed-off-by: Yujun Zhang <zhang.yujunz@zte.com.cn>
-rw-r--r-- | DEVELOP.md | 57 |
1 files changed, 57 insertions, 0 deletions
@@ -46,6 +46,63 @@ It is for macOS uses TLS instead of OpenSSL and no header files supported. The s # export LDFLAGS='-L $openssl_install_path/lib' ``` +### Third Party Code + +QTIP includes a few third party code via [subrepo](https://github.com/ingydotnet/git-subrepo). +All third party code are stored in `/third-party`. + +To pull the changes from remote repository, use + +``` +git subrepo pull third-party/<subdir> +``` + +It will create a new commit in parent repo, i.e. `qtip`. However, the +auto generated commit message does not include mandatory tags such as +`Change-Id` required by gerrit. You need to manually amend the commit to +append those. + +``` +git commit --amend -s +``` + +Example of final commit message + +``` +Include third party script for license checking and amending +The following commit message are generated automatically by git-subrepo +----------------------------------------------------------------------------- +git subrepo clone git@github.com:openzero-zte/License.git third-party/License + +subrepo: + subdir: "third-party/License" + merged: "61489da" +upstream: + origin: "git@github.com:openzero-zte/License.git" + branch: "master" + commit: "61489da" +git-subrepo: + version: "0.3.0" + origin: "https://github.com/ingydotnet/git-subrepo" + commit: "988f8c8" +----------------------------------------------------------------------------- +Change-Id: I8eab86a8ce3f26995af3e3535f31f361b4826a8b +Signed-off-by: Yujun Zhang <zhang.yujunz@zte.com.cn> +``` + +Sometimes you may modify the third-party code to adapt it in `qtip`. +To push the changes to remote repository, run + +``` +git subrepo push third-party/<subdir> +``` + +If you want to include a new repository of third party code. Use + +``` +git subrepo clone <remote-url> [<subdir>] +``` + ## Architecture **TODO**: move to design spec |