5 Star 11 Fork 7

Gitee 极速下载/go-git

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
此仓库是为了提升国内下载速度的镜像仓库,每日同步一次。 原始仓库: https://github.com/src-d/go-git
克隆/下载
main.go 1.99 KB
一键复制 编辑 原始数据 按行查看 历史
Máximo Cuadros 提交于 2016-09-20 15:23 . fix build
package main
import "fmt"
func main() {
fmt.Println("example to be fixed")
}
/*
import (
"fmt"
"io"
"io/ioutil"
"os"
"path/filepath"
"strings"
"gopkg.in/src-d/go-git.v4"
"gopkg.in/src-d/go-git.v4/storage/filesystem"
"gopkg.in/src-d/go-git.v4/utils/fs"
)
func main() {
if len(os.Args) != 2 {
usage()
os.Exit(1)
}
fs := NewCustomFS(os.Args[1])
s, err := filesystem.NewStorage(fs, ".git")
if err != nil {
fmt.Fprint(os.Stderr, err)
os.Exit(1)
}
repo, err := git.NewRepository(s)
if err != nil {
fmt.Fprint(os.Stderr, err)
os.Exit(1)
}
iter, err := repo.Commits()
if err != nil {
fmt.Fprint(os.Stderr, err)
os.Exit(1)
}
defer iter.Close()
for {
commit, err := iter.Next()
if err != nil {
if err == io.EOF {
break
}
fmt.Fprint(os.Stderr, err)
os.Exit(1)
}
fmt.Println(commit)
}
}
func usage() {
fmt.Fprintf(os.Stderr, "%s <path to .git dir>", os.Args[0])
}
// A simple proxy filesystem example: It mimics local filesystems, using
// 'base' as its root and a funny path separator ("--").
//
// Example: when constructed with 'newFS("tmp")', a path like 'foo--bar'
// will represent the local path "/tmp/foo/bar".
type CustomFS struct {
base string
}
const separator = "--"
func NewCustomFS(path string) *CustomFS {
return &CustomFS{
base: path,
}
}
func (fs *CustomFS) Stat(path string) (info os.FileInfo, err error) {
f, err := os.Open(fs.ToReal(path))
if err != nil {
return nil, err
}
defer func() {
errClose := f.Close()
if err == nil {
err = errClose
}
}()
return f.Stat()
}
func (fs *CustomFS) ToReal(path string) string {
parts := strings.Split(path, separator)
return filepath.Join(fs.base, filepath.Join(parts...))
}
func (fs *CustomFS) Open(path string) (fs.ReadSeekCloser, error) {
return os.Open(fs.ToReal(path))
}
func (fs *CustomFS) ReadDir(path string) ([]os.FileInfo, error) {
return ioutil.ReadDir(fs.ToReal(path))
}
func (fs *CustomFS) Join(elem ...string) string {
return strings.Join(elem, separator)
}
*/
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/mirrors/go-git.git
git@gitee.com:mirrors/go-git.git
mirrors
go-git
go-git
v4.0.0-rc4

搜索帮助