func (f *FS) Root() (fs.Node, error) {
	return &Root{FS: f}, nil
}
Root returns the root filesystem node.
package main
import (
	"encoding/base64"
	"flag"
	"io"
	"log"
	"net/http"
	"os"
	"strings"
	"bazil.org/fuse"
	"bazil.org/fuse/fs"
	"code.google.com/p/goauth2/oauth"
	"github.com/google/go-github/github"
	"golang.org/x/net/context"
)
func main() {
	log.SetFlags(0)
	token := flag.String("token", "", "personal access token")
	flag.Parse()
	if flag.NArg() != 1 {
		log.Fatal("path required")
	}
	log.Printf("mounting to: %s", flag.Arg(0))
	conn, err := fuse.Mount(flag.Arg(0))
	if err != nil {
		log.Fatal(err)
	}
	var c *http.Client
	if *token != "" {
		c = (&oauth.Transport{Token: &oauth.Token{AccessToken: *token}}).Client()
	}
	filesys := &FS{Client: github.NewClient(c)}
	if err := fs.Serve(conn, filesys); err != nil {
		log.Fatal(err)
	}
	<-conn.Ready
	if err := conn.MountError; err != nil {
		log.Fatal(err)
	}
}
type FS struct {
	Client *github.Client
}