GitRoot

Craft your forge, Build your project, Grow your community freely
 1---
 2pluginName: Grafter
 3pluginBaseline: Some grafters join tree branches. Our Grafter joins your Git branches.
 4homepage: /app/plugins/grafter/
 5docpage: /app/plugins/grafter/doc.html
 6changelog: /app/plugins/grafter/CHANGELOG.html
 7---
 8
 9# Grafter
10
11Every time you (or a contributor) push a branch, grafter plugin will create a `grafts/$nameBranch.md` in the git branch. This file is all you need to know to review, discuss, merge this branch. This is the start of this file:
12
13```md
14---
15target: main
16status: draft
17reviewers: []
18---
19```
20
21You can discuss/review changes directly in this file or in the code. Status is `draft` when creating. Then user can set it at `review`, when the statu sis review, each change in the repository is added in this file:
22
23````md
24## Push 1 commit
25
26### :ok_hand: add test task
27
28(5c87370cec82226b15259b918e4ed54eaa313472)
29
30- +- [app/libs/rust/plugin/src/gitroot.rs](../app/libs/rust/plugin/src/gitroot.rs)
31
32```diff
33--- a/app/libs/rust/plugin/src/gitroot.rs
34+++ b/app/libs/rust/plugin/src/gitroot.rs
35@@ -29,8 +29,8 @@
36 #[serde(rename_all = "camelCase")]
37 pub struct ForgeConf {
38     domain: String,
39-    external_ssh_addr: String
40-	external_http_addr: String
41+    external_ssh_addr: String,
42+    external_http_addr: String,
43 }
44
45 #[derive(Debug, Deserialize)]
46```
47
48- +- [mise.toml](../mise.toml)
49
50```diff
51--- a/mise.toml
52+++ b/mise.toml
53@@ -14,10 +14,13 @@
54 run = "make build"
55
56 [tasks.init]
57-description = "Build the single binary"
58+description = "Configure your git client"
59 run = ".gitroot/init.sh"
60
61 [tasks.issue]
62 description = "Create an issue"
63 run = ".gitroot/issue.sh"
64
65+[tasks.test]
66+description = "Execute tests"
67+run = "make testall"
68```
69````
70
71When all is good put `merge` in status and if you have right to write in target, gitroot will merge and delete branche.