summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacob Vosmaer <jacob@gitlab.com>2018-04-09 17:39:21 +0200
committerJacob Vosmaer <jacob@gitlab.com>2018-04-09 17:39:21 +0200
commita04ec728fa748fd5a2d8e346486aff4bbf4f1bef (patch)
tree95cc3d744a8c0b9ee0fb309b1eee43212004d63e
parentabbb0c745fbee5898f48f805c6f7860ddf13a0b2 (diff)
downloadgitlab-ce-a04ec728fa748fd5a2d8e346486aff4bbf4f1bef.tar.gz
More changes
-rw-r--r--doc/development/gitaly.md22
1 files changed, 13 insertions, 9 deletions
diff --git a/doc/development/gitaly.md b/doc/development/gitaly.md
index 18b62c2b12d..34c34c3f40f 100644
--- a/doc/development/gitaly.md
+++ b/doc/development/gitaly.md
@@ -16,14 +16,14 @@ Gitaly.
to contribute a Git feature and you're getting stuck, reach out to the
Gitaly team or `@jacobvosmaer-gitlab`.
-By 'new feature' we mean any method or class in lib/gitlab/git that is
-called from outside lib/gitlab/git. For new methods that are called
-from inside lib/gitlab/git, see 'Modifying existing Git features'
+By 'new feature' we mean any method or class in `lib/gitlab/git` that is
+called from outside `lib/gitlab/git`. For new methods that are called
+from inside `lib/gitlab/git`, see 'Modifying existing Git features'
below.
-There should also be no new code that touches Git repositories via
+There should be no new code that touches Git repositories via
disk access (e.g. Rugged, `git`, `rm -rf`) anywhere outside
-lib/gitlab/git.
+`lib/gitlab/git`.
The process for adding new Gitaly features is:
@@ -50,15 +50,19 @@ repo](https://gitlab.com/gitlab-org/gitaly/blob/master/doc/ruby_endpoint.md).
## Modifying existing Git features
-If you modify existing Git features in lib/gitlab/git you need to make
-sure the changes also work in Gitaly. Because we are still in the the
+If you modify existing Git features in `lib/gitlab/git` you need to make
+sure the changes also work in Gitaly. Because we are still in the
migration process there are a number of subtle pitfalls. Features that
have been migrated have dual implementations (Gitaly and local). The
Gitaly implementation may or may not use a vendored (and therefore
-possibly outdated) copy of the local implementation in lib/gitlab/git.
+possibly outdated) copy of the local implementation in `lib/gitlab/git`.
To avoid unexpected problems and conflicts, all changes to
-lib/gitlab/git need to be approved by a member of the Gitaly team.
+`lib/gitlab/git` need to be approved by a member of the Gitaly team.
+
+For the time being, while the Gitaly migration is still in progress,
+there should be no Enterprise Edition-only Git code in
+`lib/gitlab/git`. Also no mixins.
## Feature Flags