summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfr33domlover <fr33domlover@riseup.net>2019-11-04 09:21:51 +0200
committerfr33domlover <fr33domlover@riseup.net>2019-11-04 09:21:51 +0200
commit88f070ff80ea8625c06e7285bb24daa094c4521b (patch)
tree15e43a451ef9b06d8f1d098891af3191c3a4b239
parent4554ce356a270fdc394faba749052a4b3de20049 (diff)
Vocab spec: Add `Branch` and `ref`
-rw-r--r--.gitignore4
-rw-r--r--spec/vocabulary.md58
2 files changed, 60 insertions, 2 deletions
diff --git a/.gitignore b/.gitignore
index 52cb7c8..3e58e3b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -21,8 +21,8 @@ python/*
!python/forgefed_wsgi.py
!python/run-dev-server
-!specification/
-!specification/*
+!spec/
+!spec/*
!vocabulary/
!vocabulary/*
diff --git a/spec/vocabulary.md b/spec/vocabulary.md
index e7f7d77..60272ac 100644
--- a/spec/vocabulary.md
+++ b/spec/vocabulary.md
@@ -111,6 +111,31 @@ A typical `@context` of a ForgeFed object may look like this:
## Object Types
+### Branch
+
+**URI:** `https://forgefed.peers.community/ns#Branch`
+
+**Notes:** Represents a named variable reference to a version of the
+`Repository`, typically used for committing changes in parallel to other
+development, and usually eventually merging the changes into the main history
+line.
+
+**Example:**
+
+```json
+{
+ "@context": [
+ "https://www.w3.org/ns/activitystreams",
+ "https://forgefed.peers.community/ns"
+ ],
+ "id": "https://example.dev/luke/myrepo/branches/master",
+ "type": "Branch",
+ "name": "master",
+ "context": "https://example.dev/luke/myrepo",
+ "ref": "refs/heads/master"
+}
+```
+
### Commit
**URI:** `https://forgefed.peers.community/ns#Commit`
@@ -488,3 +513,36 @@ of the tree, and got removed from the tree in this commit.
**Inverse of:** (None)
**Example:**
+
+## ref
+
+**URI:** `https://forgefed.peers.community/ns#ref`
+
+**Notes:** Specifies an identifier for a `Branch`, that is used in the
+`Repository` to uniquely refer to it. For example, in Git, "refs/heads/master"
+would be the `ref` of the master branch.
+
+**Domain:** `Branch`
+
+**Range:** `xsd:string`
+
+**Functional:** Yes
+
+**Inverse of:** (None)
+
+**Example:**
+
+```json
+{
+ "@context": [
+ "https://www.w3.org/ns/activitystreams",
+ "https://forgefed.peers.community/ns"
+ ],
+ "id": "https://example.dev/luke/myrepo/branches/master",
+ "type": "Branch",
+ "name": "master",
+ "context": "https://example.dev/luke/myrepo",
+
+ "ref": "refs/heads/master"
+}
+```