From 876fccbbde53e27b3fb820808d2c336ca71aa7e1 Mon Sep 17 00:00:00 2001 From: Jakob Odersky Date: Fri, 14 Sep 2018 17:59:21 -0700 Subject: Make this repo a standalone website These changes add the ability to generate a full website from individual style guides. The website can be viewed [here](drivergroup.github.io/best-practices). Also included, are the following additions: - Improve recommendations for Scala. - Add more recommendations for Git. - Add recommendations for Shell Script. --- guides/git.md | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 guides/git.md (limited to 'guides/git.md') diff --git a/guides/git.md b/guides/git.md new file mode 100644 index 0000000..c03e447 --- /dev/null +++ b/guides/git.md @@ -0,0 +1,29 @@ +## Git + +- Use a simple branching model with one master development branch, and + create feature and backport branches as required. + + - The master branch should represent the latest development version. + + - Tag all released versions. + + - Backport branches may be spun off tags when they become necessary. + +- Proposed changes require at least one sign-off to be accepted into + master. + +- Large feature branches with multiple collaborators should be + *merged* into master. + + Rationale: rewriting history in public branches can break other + people's work and should not be done lightly. + +- Private feature branches should be *rebased* onto master, prior to + merging. *Squashing* is optional, but all intermediate commits + should contain meaningful changes and must pass continuous + integration tests. + + Rationale: private branches should be considered backups of work on + local developer machines and hence should not be relied upon by + others. Furthermore, a linear history is easier to reason about than + a branched one. -- cgit v1.2.3