summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--argv.go1
-rw-r--r--argvAutoshell.go2
-rw-r--r--doPatch.go15
3 files changed, 17 insertions, 1 deletions
diff --git a/argv.go b/argv.go
index 2479510..a50a197 100644
--- a/argv.go
+++ b/argv.go
@@ -62,6 +62,7 @@ type CleanDevelCmd struct {
}
type PatchCmd struct {
+ Check *EmptyCmd `arg:"subcommand:check" help:"check the state of the patches"`
List *EmptyCmd `arg:"subcommand:list" help:"your downloaded patchsets"`
Get *EmptyCmd `arg:"subcommand:get" help:"get the new patchsets"`
Show *EmptyCmd `arg:"subcommand:show" help:"your pending commits to your code"`
diff --git a/argvAutoshell.go b/argvAutoshell.go
index 54b4e88..72c13d3 100644
--- a/argvAutoshell.go
+++ b/argvAutoshell.go
@@ -50,7 +50,7 @@ func (args) doBashAuto() {
case "pull":
fmt.Println("dirty clean list patches --force")
case "patch":
- fmt.Println("get list submit show")
+ fmt.Println("check get list submit show")
case "user":
fmt.Println("--force")
case "devel":
diff --git a/doPatch.go b/doPatch.go
index d1ee508..badf5f5 100644
--- a/doPatch.go
+++ b/doPatch.go
@@ -37,6 +37,21 @@ func doPatch() error {
return nil
}
+ if argv.Patch.Check != nil {
+ for pset := range me.forge.Patchsets.IterAll() {
+ log.Info(pset.Uuid)
+ for patch := range pset.Patches.IterAll() {
+ if repo, ok := me.forge.IsPatchApplied(patch); ok {
+ log.Info("found patch in repo", repo.Namespace, patch.Filename)
+ } else {
+ // log.Info("did not find patch", patch.CommitHash, patch.NewHash, patch.Filename)
+ }
+ }
+ }
+ // me.forge.Patchsets.PrintTable()
+ return nil
+ }
+
if argv.Patch.List != nil {
me.forge.Patchsets.PrintTable()
// return doPatchList()