52 lines
1.1 KiB
Go
52 lines
1.1 KiB
Go
package cmd
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"github.com/gogits/go-gogs-client"
|
|
"github.com/spf13/cobra"
|
|
)
|
|
|
|
// repoCmd represents the repo command
|
|
var repoCmd = &cobra.Command{
|
|
Use: "repo",
|
|
Short: "parent command for repositories",
|
|
Long: `gogs repo [(new|create)|list|destroy]
|
|
|
|
$ gogs repo new my-new-repo --private
|
|
$ gogs repo create my-new-repo --org=JustUsGuys
|
|
$ gogs repo list
|
|
$ gogs repo destroy ia my-new-repo
|
|
$ gogs repo destroy ia/my-new-repo
|
|
|
|
`,
|
|
Run: func(cmd *cobra.Command, args []string) {
|
|
fmt.Println("Please use: gogs repo [(new|create)|list|destroy]")
|
|
},
|
|
}
|
|
|
|
func printRepo(repo *gogs.Repository) {
|
|
fmt.Println("------------------------------------------------")
|
|
fmt.Printf("* %v", repo.FullName)
|
|
if repo.Private {
|
|
fmt.Printf(" (private)")
|
|
}
|
|
if repo.Fork {
|
|
fmt.Printf(" (fork)")
|
|
}
|
|
fmt.Println()
|
|
|
|
if repo.Description != "" {
|
|
fmt.Println("[--> ", repo.Description)
|
|
}
|
|
|
|
fmt.Println("Go there: ", repo.HtmlUrl)
|
|
fmt.Println("SSH: ", repo.SshUrl)
|
|
fmt.Println("Clone it: ", repo.CloneUrl)
|
|
fmt.Println("------------------------------------------------")
|
|
}
|
|
|
|
func init() {
|
|
RootCmd.AddCommand(repoCmd)
|
|
}
|