예제 #1
0
파일: cat.go 프로젝트: burke/rabit
func cmdCat(args *docopt.Args, rabitDir, rabitRemote string) error {
	repo := repo.New(rabitDir)

	name := args.String["<name>"]

	return repo.CatFile(name, os.Stdout)
}
예제 #2
0
파일: init.go 프로젝트: burke/rabit
func cmdInit(args *docopt.Args, rabitDir, rabitRemote string) error {
	if rabitDir == "" {
		return fmt.Errorf("RABIT_DIR must specify a path to an existing directory")
	}
	stat, err := os.Stat(rabitDir)
	if err != nil || !stat.IsDir() {
		return fmt.Errorf("RABIT_DIR must specify a path to an existing directory")
	}

	return repo.New(rabitDir).Init()
}
예제 #3
0
파일: ls.go 프로젝트: burke/rabit
func cmdLs(args *docopt.Args, rabitDir, rabitRemote string) error {
	repo := repo.New(rabitDir)
	names, err := repo.LsFiles()
	if err != nil {
		return err
	}
	for _, name := range names {
		fmt.Println(name)
	}
	return nil
}
예제 #4
0
파일: add.go 프로젝트: burke/rabit
func cmdAdd(args *docopt.Args, rabitDir, rabitRemote string) error {
	repo := repo.New(rabitDir)

	path := args.String["<path>"]
	name := args.String["<name>"]

	f, err := os.Open(path)
	if err != nil {
		return err
	}

	return repo.Add(f, name)
}
예제 #5
0
파일: rm.go 프로젝트: burke/rabit
func cmdRm(args *docopt.Args, rabitDir, rabitRemote string) error {
	repo := repo.New(rabitDir)
	name := args.String["<name>"]
	return repo.Rm(name)
}