docs
This commit is contained in:
parent
aa229b8778
commit
0529b0dca0
20
README.md
20
README.md
|
@ -1,5 +1,12 @@
|
||||||
# forge
|
# forge
|
||||||
|
|
||||||
|
## Design Goals
|
||||||
|
|
||||||
|
* Software engineering is the art of making things work.
|
||||||
|
* Release engineering is the art of making things perfect.
|
||||||
|
|
||||||
|
## Notes
|
||||||
|
|
||||||
This can be used to maintain git repositories
|
This can be used to maintain git repositories
|
||||||
expiremental work on federated git
|
expiremental work on federated git
|
||||||
|
|
||||||
|
@ -9,22 +16,25 @@ expiremental work on federated git
|
||||||
* uses a GUI or the console(console display needs work)
|
* uses a GUI or the console(console display needs work)
|
||||||
* always wrap around 'git' -- it basically just types 'git' commands really fast
|
* always wrap around 'git' -- it basically just types 'git' commands really fast
|
||||||
|
|
||||||
## Notes & Goals:
|
## Development Goals
|
||||||
|
|
||||||
* use a GUI that also works on the command line
|
* have a GUI that also works on the command line
|
||||||
* andlabs GTK gui plugin starts breaking around 200 repos
|
|
||||||
|
|
||||||
## Install:
|
## Install:
|
||||||
|
|
||||||
* go install go.wit.com/apps/forge@latest
|
* go install go.wit.com/apps/forge@latest
|
||||||
|
|
||||||
## building from sources (may work Jan 2026)
|
## building from sources
|
||||||
|
|
||||||
```
|
```
|
||||||
|
# note as of Feb 2025. Forge has an option in forge to build itself.
|
||||||
|
# The instructions below are out of date, but provide the general idea.
|
||||||
|
# accurate instructions are in the forge code itself
|
||||||
|
|
||||||
go install go.wit.com/apps/go-clone@latest # this tool makes it easier to 'git clone' repos and recursively 'git clone' the dependancies
|
go install go.wit.com/apps/go-clone@latest # this tool makes it easier to 'git clone' repos and recursively 'git clone' the dependancies
|
||||||
go install go.wit.com/apps/autogenpb@latest # this tool will generate the protobuf *pb.go files (also Marshal(), Sort(), etc.)
|
go install go.wit.com/apps/autogenpb@latest # this tool will generate the protobuf *pb.go files (also Marshal(), Sort(), etc.)
|
||||||
|
|
||||||
go-clone --recursive go.wit.com/apps/forge # this will 'git clone' about 20 repos into ~/go/src (or where your go.work file is)
|
go-clone go.wit.com/apps/forge # this will 'git clone' about 20 repos into ~/go/src (or where your go.work file is)
|
||||||
|
|
||||||
cd go.wit.com/lib/protobuf/forgepb
|
cd go.wit.com/lib/protobuf/forgepb
|
||||||
make # autogenpb will make .pb.go, marshal.pb.go and sort.pb.go files
|
make # autogenpb will make .pb.go, marshal.pb.go and sort.pb.go files
|
||||||
|
|
|
@ -95,25 +95,26 @@ func makeReposWin() *gadgets.GenericWindow {
|
||||||
log.Info("test delete window here")
|
log.Info("test delete window here")
|
||||||
}
|
}
|
||||||
grid := insertWin.Group.RawGrid()
|
grid := insertWin.Group.RawGrid()
|
||||||
grid.NewButton("do something", func() {
|
var t *gitpb.ReposTable
|
||||||
log.Info("do something on each pb row")
|
found := new(gitpb.Repos)
|
||||||
})
|
all := me.forge.Repos.SortByFullPath()
|
||||||
grid.NewButton("attempt to insert table", func() {
|
for all.Scan() {
|
||||||
// make the window for the first time
|
repo := all.Next()
|
||||||
found := new(gitpb.Repos)
|
if me.forge.Config.IsReadOnly(repo.GetGoPath()) {
|
||||||
all := me.forge.Repos.SortByFullPath()
|
continue
|
||||||
for all.Scan() {
|
|
||||||
repo := all.Next()
|
|
||||||
if me.forge.Config.IsReadOnly(repo.GetGoPath()) {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
found.AppendByGoPath(repo)
|
|
||||||
|
|
||||||
}
|
}
|
||||||
t := addWindowPB(insertWin, found)
|
|
||||||
|
found.AppendByGoPath(repo)
|
||||||
|
|
||||||
|
}
|
||||||
|
grid.NewButton("insert table", func() {
|
||||||
|
// make the window for the first time
|
||||||
|
t = addWindowPB(insertWin, found)
|
||||||
log.Info("table has uuid", t.GetUuid())
|
log.Info("table has uuid", t.GetUuid())
|
||||||
})
|
})
|
||||||
|
grid.NewButton("attempt to delete table", func() {
|
||||||
|
t.Delete()
|
||||||
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
grid.NewButton("Configure", func() {
|
grid.NewButton("Configure", func() {
|
||||||
|
|
Loading…
Reference in New Issue