From e5eb0509faaf50894a8f4e6d9b3e1c9bea0b6a6d Mon Sep 17 00:00:00 2001 From: shylinux Date: Mon, 20 Mar 2023 00:33:01 +0800 Subject: [PATCH] opt some --- misc/git/status.go | 7 ++++++- misc/git/token.go | 5 +++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/misc/git/status.go b/misc/git/status.go index c8596322..5cba065e 100644 --- a/misc/git/status.go +++ b/misc/git/status.go @@ -288,6 +288,11 @@ func init() { "branch_switch": {Help: "切换", Hand: func(m *ice.Message, arg ...string) { _repos_cmd(m, m.Option(REPOS), "checkout", m.Option(BRANCH)) }}, + "oauth": {Help: "授权", Hand: func(m *ice.Message, arg ...string) { + m.ProcessOpen(kit.MergeURL2(ice.Info.Make.Remote, "/chat/cmd/web.code.git.token", + aaa.USERNAME, m.Option(ice.MSG_USERNAME), + tcp.HOST, m.Option(ice.MSG_USERHOST))) + }}, nfs.TRASH: {Hand: func(m *ice.Message, arg ...string) { m.Assert(m.Option(REPOS) != "" && m.Option(nfs.FILE) != "") nfs.Trash(m, path.Join(_repos_path(m.Option(REPOS)), m.Option(nfs.FILE))) @@ -331,7 +336,7 @@ func init() { defer web.ToastProcess(m)() files, adds, dels, last := _status_list(m) m.StatusTimeCount("files", files, "adds", adds, "dels", dels, "last", last.Format(ice.MOD_TIME)) - m.Action(PULL, PUSH, "insteadof", TOKEN) + m.Action(PULL, PUSH, "insteadof", TOKEN, "oauth") m.Sort("repos,type,file") } else { _repos_cmd(m, arg[0], DIFF) diff --git a/misc/git/token.go b/misc/git/token.go index eb58bb2e..a03654dc 100644 --- a/misc/git/token.go +++ b/misc/git/token.go @@ -17,6 +17,11 @@ func init() { Index.MergeCommands(ice.Commands{ TOKEN: {Name: "token username auto prunes", Actions: ice.MergeActions(ice.Actions{ ice.CTX_INIT: {Hand: func(m *ice.Message, arg ...string) { aaa.White(m, "token.sid") }}, + web.PP("set"): {Hand: func(m *ice.Message, arg ...string) { + list := []string{m.Option(TOKEN)} + m.Cmd(nfs.CAT, kit.HomePath(".git-credentials"), func(line string) { list = append(list, line) }) + m.Cmd(nfs.SAVE, kit.HomePath(".git-credentials"), strings.Join(list, ice.NL)+ice.NL) + }}, web.PP("get"): {Hand: func(m *ice.Message, arg ...string) { m.Cmd(nfs.CAT, kit.HomePath(".git-credentials"), func(text string) { if strings.HasSuffix(text, ice.AT+arg[0]) {