diff options
Diffstat (limited to 'DEVELOP.md')
-rw-r--r-- | DEVELOP.md | 75 |
1 files changed, 74 insertions, 1 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 @@ -94,7 +151,23 @@ TBD ### CLI -TBD +Click currently supports Bash completion. The prerequisite for this is that the program +needs to be installed correctly. To install Qtip, execute the following command in root +folder of Qtip: + +``` +cd <project root> +pip install -e . +``` + +Once the installation has been completed successfully, the following needs to be added to +the `.bashrc` file: + +``` +eval "$(_QTIP_COMPLETE=source qtip)" +``` + +The above would activate command completion for Qtip. ### API |