aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitreview4
-rw-r--r--README.md42
2 files changed, 45 insertions, 1 deletions
diff --git a/.gitreview b/.gitreview
new file mode 100644
index 00000000..155577c9
--- /dev/null
+++ b/.gitreview
@@ -0,0 +1,4 @@
+[gerrit]
+host=gerrit.fd.io
+port=29418
+project=cicn
diff --git a/README.md b/README.md
index f42e228b..e21652fe 100644
--- a/README.md
+++ b/README.md
@@ -45,4 +45,44 @@ Name | Description | Language and style
For sub-project cicn-plugin, the master branch is cicn-plugin/master
that can be cloned as follows:
-$ git clone -b cicn-plugin/master https://gerrit.fd.io/r/cicn cicn-plugin \ No newline at end of file
+$ git clone -b cicn-plugin/master https://gerrit.fd.io/r/cicn cicn-plugin
+
+## How to manage different master branches
+
+It is suggested to clone each subproject branch in a different workspace to
+avoid error prone operations. The cicn git repo stores several projects which
+are independent one to another. While access control and isolation is
+guaranteed at a certain level by gerrit, using one single workspace is
+discouraged.
+
+git clone -b cicn-plugin/master https://gerrit.fd.io/r/cicn cicn-plugin;
+git clone -b sb-forwarder/master https://gerrit.fd.io/r/cicn sb-forwarder;
+git clone -b libicnet/master https://gerrit.fd.io/r/cicn libicnet;
+git clone -b cframework/master https://gerrit.fd.io/r/cicn cframework;
+git clone -b ccnxlibs/master https://gerrit.fd.io/r/cicn ccnxlibs;
+git clone -b http-server/master https://gerrit.fd.io/r/cicn http-server;
+git clone -b viper/master https://gerrit.fd.io/r/cicn viper;
+git clone -b vicn/master https://gerrit.fd.io/r/cicn vicn;
+git clone -b android-sdk https://gerrit.fd.io/r/cicn android-sdk;
+
+### For committers
+
+By having multiple sub-projects in the same repo, it is highly recommended
+to use the following approach while using branches and pushing patch sets.
+
+$ subp = cicm-plugin
+$ committer = user
+
+$ git clone -b cicn-plugin/master ssh://committer@gerrit.fd.io:29418/cicn subp;
+$ scp -p -P 29418 committer@gerrit.fd.io:hooks/commit-msg subp/.git/hooks/;
+
+If you use an email alias like user+fdio@email.com that is registered in the
+gerrit frontend it is recommended to set the following kind of configuration
+
+$ git config --local user.email "$committer+fdio@email.com"
+$ git config --local alias.push-for-review "push origin HEAD:refs/for/$subp/master"
+
+this allows to avoid pushing for review to different sub-project branches
+using the command
+
+$ git push-for-review