You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@celix.apache.org by rl...@apache.org on 2020/05/07 17:27:03 UTC

[celix-site] branch master updated: Added image for describing development workflow and update 'develop' to 'master'

This is an automated email from the ASF dual-hosted git repository.

rlenferink pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/celix-site.git


The following commit(s) were added to refs/heads/master by this push:
     new b443bd8  Added image for describing development workflow and update 'develop' to 'master'
     new 14dfbab  Merge pull request #9 from rlenferink/update-development-workflow
b443bd8 is described below

commit b443bd84581de47515a1f9b6528e8cbc804ddb21
Author: Roy Lenferink <le...@gmail.com>
AuthorDate: Wed May 6 20:35:48 2020 +0200

    Added image for describing development workflow and update 'develop' to 'master'
---
 config.toml                                  |   2 +-
 source/contributing/development-workflow.md  |  13 ++++++++
 source/contributing/releasing.md             |  29 +++++++++---------
 source/contributing/submitting-patches.md    |  43 +++++++++++----------------
 static/contributing/development-workflow.png | Bin 0 -> 135948 bytes
 5 files changed, 46 insertions(+), 41 deletions(-)

diff --git a/config.toml b/config.toml
index 41000a7..68439be 100644
--- a/config.toml
+++ b/config.toml
@@ -36,7 +36,7 @@ date = ["date", ":filename", "publishDate", "lastmod"]
 latestVersion = "2.2.0"
 
 repositoryUrl = "https://github.com/apache/celix"
-repositorySourceBranch = "develop"
+repositorySourceBranch = "master"
 
 siteRepositoryUrl = "https://github.com/apache/celix-site"
 siteRepositorySourceBranch = "master"
diff --git a/source/contributing/development-workflow.md b/source/contributing/development-workflow.md
new file mode 100755
index 0000000..d874b8e
--- /dev/null
+++ b/source/contributing/development-workflow.md
@@ -0,0 +1,13 @@
+---
+title: Development workflow
+---
+
+# Development workflow
+
+Celix uses an adapted version of the [GitFlow workflow](https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow).
+The default branch of the Celix repositories is the `master` branch. Feature branches are created from and against the
+`master` branch. Releases & hotfixes are also created from and against the `master` branch.
+
+The following image visualizes the workflow Celix is using:
+
+<img src="development-workflow.png" class="img-fluid" alt="Celix development workflow">
diff --git a/source/contributing/releasing.md b/source/contributing/releasing.md
index 5358ec4..89a6078 100644
--- a/source/contributing/releasing.md
+++ b/source/contributing/releasing.md
@@ -34,12 +34,12 @@ for more information. This updated file needs to be uploaded to GIT, be sure to
 
 ## Create release branch
 
-A release will be prepared in a release branch. Normally this is branch created from the develop.
+A release will be prepared in a release branch. This branch is created from the `master` branch.
 
 ```bash
-git checkout develop
-git checkout -b release/celix-X.Y.Z
-git push origin release/celix-X.Y.Z
+git checkout master
+git checkout -b release-X.Y.Z
+git push origin release-X.Y.Z
 ```
 
 ## Update release related files
@@ -217,36 +217,35 @@ updated and the release will be announced.
 Thanks for voting.
 ```
 
-<p class="alert alert-primary">Note: Be sure to post the vote result with the same topic as the original message. Also 
-prepend the subject with [RESULT]. This is, again, needed to be able to keep track of vote threads.</p>
+<p class="alert alert-primary">
+    Note: Be sure to post the vote result with the same topic as the original message. Also prepend the subject with [RESULT]. 
+    This is, again, needed to be able to keep track of vote threads.
+</p>
 
 ## Vote Passed
 
 If the vote is passed sucessfully the release branch can be merged to master, a release tag needs to be created, the release must be moved from the "dev" area to the "release" area 
 and the release can be announced.
 
-### Merge to master and create GIT tag
+### Create Git tag and merge to master
 
 After changing all files a tag for the new release must be made. Before doing so, make sure all changed files are committed.
-The release branch needs to be merged into master, a tag - named like rel/celix-X.Y.Z - needs to created and all the changes needs to merged with develop.
+A tag - named like rel/celix-X.Y.Z - needs to created and the release branch needs to be merged into master.
 
 ```bash
-$ git checkout master
-$ git merge release/celix-X.Y.Z
-$ git push origin master
-
 # To sign a tag using your GPG key, it is necessary to configure git with the key you want to use
 # Configure git by issuing the following command, where E43F742E needs to be replaced with your key id
 $ git config --global user.signingkey E43F742E
 
-# Next thing to do is creating the tag
+# Create the tag
 $ git tag -s rel/celix-X.Y.Z -m 'Celix release X.Y.Z'
 
 # Next thing to do is pushing the tag to the remote
 $ git push origin rel/celix-X.Y.Z
 
-$ git checkout develop
-$ git merge master
+$ git checkout master
+$ git merge release-X.Y.Z
+$ git push origin master
 ```
 
 ### Roll out release artifacts
diff --git a/source/contributing/submitting-patches.md b/source/contributing/submitting-patches.md
index 3661d7a..1f8042a 100644
--- a/source/contributing/submitting-patches.md
+++ b/source/contributing/submitting-patches.md
@@ -6,6 +6,15 @@ title: Submitting patches
 
 {{% tableofcontents %}}
 
+
+<p class="alert alert-primary">
+    Celix uses Git so you must install a git client locally to be able to clone the Celix repository.
+</p>
+
+<p class="alert alert-primary">
+    The development workflow that Apache Celix is following is described <a href="development-workflow.html">here</a>.
+</p>
+
 ## Contributing with GitHub
 
 Using the GitHub mirror is the simplest way to contribute to Apache Celix if you are not a member
@@ -34,16 +43,14 @@ Right now you should have two remotes defined for the repo, `origin` and `fork`,
 
     git remote -v 
 
-Now you are ready to work with the Apache Celix' code base. Start with switching to `develop` branch
-
-    git checkout develop
+Now you are ready to work with the Apache Celix' code base.
     
-now is time to fetch any changes from remote repository
+Fetch any changes from the remote repository
 
     git fetch
     git pull
     
-you should create a branch to keep your changes and it must be done off the `develop` branch
+You can now create branches for your changes (branches must be created from the `master` branch)
 
     git checkout -b my-branch
 
@@ -61,14 +68,14 @@ The final step is to open a Pull Request (short: PR) against the original Apache
 [Apache Celix mirror](https://github.com/apache/celix), then to [Pull request](https://github.com/apache/celix/pulls)
 and hit [New Pull Request](https://github.com/apache/celix/compare/) button.
 
-If not already selected, click on `compare across forks.` Right now you must select from the dropdowns on right
-your fork and branch to compare the differences with the Apache Celix' `develop` branch.
+If not already selected, click on `compare across forks.` Right now you must select from the dropdowns on the right
+your fork and branch to compare the differences with the Apache Celix' `master` branch.
 
-Finally hit `Create Pull Request` button and you are done!
+Finally, hit the `Create Pull Request` button and you are done!
 
-After your PR got accepted and merged you must clean up your local repo, please switch your current branch to `develop`
+After your PR got accepted and merged you must clean up your local repo, please switch your current branch to `master`
 
-    git checkout develop
+    git checkout master
     
 and fetch updates from remote
 
@@ -83,9 +90,7 @@ and you are ready to start working on another feature/issue.
 
 ## Committers
 
-Celix uses Git so you must install a git client locally and then you can clone the Celix repository:
-
-either using Apache GitBox
+Committers can use either Apache GitBox
 
     git clone https://gitbox.apache.org/repos/asf/celix.git    
     
@@ -95,18 +100,6 @@ or GitHub
 
 and done!
 
-<p class="alert alert-primary">Note: Remember that Apache Celix is following the <a href="https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow">GitFlow Workflow</a>
-and the most recent work is on the `develop` branch.</p>
-
-## Non-committers 
-
-If you are not a committer you can still clone the Gitbox repo but you won't be able push to any changes to it.
-At that moment, it's easier to use GitHub, as GitHub provides the functionality to handle Pull Requests.
-
-    git clone https://github.com/apache/celix.git
-
-For more info, read [Contributing with GitHub](#contributing-with-github) on this page.
-
 ## Further reading
 
  * [Git at Apache](http://wiki.apache.org/general/GitAtApache)
diff --git a/static/contributing/development-workflow.png b/static/contributing/development-workflow.png
new file mode 100644
index 0000000..01c8731
Binary files /dev/null and b/static/contributing/development-workflow.png differ