Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
github
hub
提交
3ee7aeec
H
hub
项目概览
github
/
hub
10 个月 前同步成功
通知
3
Star
22523
Fork
2406
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
H
hub
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
3ee7aeec
编写于
6月 21, 2013
作者:
J
Jingwen Owen Ou
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add git.Checkout
上级
f0379f80
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
47 addition
and
14 deletion
+47
-14
commands/checkout.go
commands/checkout.go
+22
-0
commands/commands.go
commands/commands.go
+1
-1
commands/remote.go
commands/remote.go
+1
-1
git/git.go
git/git.go
+23
-12
未找到文件。
commands/checkout.go
浏览文件 @
3ee7aeec
package
commands
import
(
"github.com/jingweno/gh/git"
"github.com/jingweno/gh/utils"
)
var
cmdCheckout
=
&
Command
{
Run
:
checkout
,
GitExtension
:
true
,
...
...
@@ -7,5 +12,22 @@ var cmdCheckout = &Command{
Short
:
"Switch the active branch to another branch"
,
}
/**
$ gh checkout https://github.com/jingweno/gh/pull/73
# > git remote add -f -t feature git://github:com/foo/gh.git
# > git checkout --track -B foo-feature foo/feature
$ gh checkout https://github.com/jingweno/gh/pull/73 custom-branch-name
**/
func
checkout
(
command
*
Command
,
args
[]
string
)
{
if
len
(
args
)
>
0
{
args
=
transformCheckoutArgs
(
args
)
}
err
:=
git
.
ExecCheckout
(
args
)
utils
.
Check
(
err
)
}
func
transformCheckoutArgs
(
args
[]
string
)
[]
string
{
return
nil
}
commands/commands.go
浏览文件 @
3ee7aeec
...
...
@@ -20,7 +20,7 @@ type Command struct {
func
(
c
*
Command
)
PrintUsage
()
{
if
c
.
GitExtension
{
err
:=
git
.
Help
(
c
.
Name
())
err
:=
git
.
Exec
Help
(
c
.
Name
())
utils
.
Check
(
err
)
}
else
{
if
c
.
Runnable
()
{
...
...
commands/remote.go
浏览文件 @
3ee7aeec
...
...
@@ -29,7 +29,7 @@ func remote(command *Command, args []string) {
args
=
transformRemoteArgs
(
args
)
}
err
:=
git
.
ExecRemote
(
args
)
err
:=
git
.
ExecRemote
(
args
...
)
utils
.
Check
(
err
)
}
...
...
git/git.go
浏览文件 @
3ee7aeec
...
...
@@ -109,14 +109,12 @@ func Remote() (string, error) {
return
""
,
errors
.
New
(
"Can't find git remote (push)"
)
}
func
ExecRemote
(
args
[]
string
)
error
{
cmd
:=
cmd
.
New
(
"git"
)
cmd
.
WithArg
(
"remote"
)
for
_
,
i
:=
range
args
{
cmd
.
WithArg
(
i
)
}
func
ExecRemote
(
args
...
string
)
error
{
cmdArgs
:=
make
([]
string
,
0
)
cmdArgs
=
append
(
cmdArgs
,
"checkout"
)
cmdArgs
=
append
(
cmdArgs
,
args
...
)
return
cmd
.
SysExec
(
)
return
sysExec
(
cmdArgs
...
)
}
func
AddRemote
(
name
,
url
string
)
error
{
...
...
@@ -125,12 +123,16 @@ func AddRemote(name, url string) error {
return
err
}
func
Help
(
command
string
)
error
{
cmd
:=
cmd
.
New
(
"git"
)
cmd
.
WithArg
(
command
)
cmd
.
WithArg
(
"--help"
)
func
ExecCheckout
(
args
[]
string
)
error
{
cmd
Args
:=
make
([]
string
,
0
)
cmd
Args
=
append
(
cmdArgs
,
"checkout"
)
cmd
Args
=
append
(
cmdArgs
,
args
...
)
return
cmd
.
SysExec
()
return
sysExec
(
cmdArgs
...
)
}
func
ExecHelp
(
command
string
)
error
{
return
sysExec
(
"help"
,
command
,
"--help"
)
}
func
Log
(
sha1
,
sha2
string
)
(
string
,
error
)
{
...
...
@@ -149,6 +151,15 @@ func Log(sha1, sha2 string) (string, error) {
return
outputs
,
nil
}
func
sysExec
(
args
...
string
)
error
{
cmd
:=
cmd
.
New
(
"git"
)
for
_
,
a
:=
range
args
{
cmd
.
WithArg
(
a
)
}
return
cmd
.
SysExec
()
}
func
execGitCmd
(
input
[]
string
)
(
outputs
[]
string
,
err
error
)
{
cmd
:=
cmd
.
New
(
"git"
)
for
_
,
i
:=
range
input
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录