Goify consts #39
32
checkout.go
32
checkout.go
|
@ -16,22 +16,22 @@ import (
|
||||||
type CheckoutStrategy uint
|
type CheckoutStrategy uint
|
||||||
|
|
||||||
const (
|
const (
|
||||||
CHECKOUT_NONE CheckoutStrategy = C.GIT_CHECKOUT_NONE // Dry run, no actual updates
|
CheckoutNone CheckoutStrategy = C.GIT_CHECKOUT_NONE // Dry run, no actual updates
|
||||||
CHECKOUT_SAFE = C.GIT_CHECKOUT_SAFE // Allow safe updates that cannot overwrite uncommitted data
|
CheckoutSafe = C.GIT_CHECKOUT_SAFE // Allow safe updates that cannot overwrite uncommitted data
|
||||||
CHECKOUT_SAFE_CREATE = C.GIT_CHECKOUT_SAFE_CREATE // Allow safe updates plus creation of missing files
|
CheckoutSafeCreate = C.GIT_CHECKOUT_SAFE_CREATE // Allow safe updates plus creation of missing files
|
||||||
CHECKOUT_FORCE = C.GIT_CHECKOUT_FORCE // Allow all updates to force working directory to look like index
|
CheckoutForce = C.GIT_CHECKOUT_FORCE // Allow all updates to force working directory to look like index
|
||||||
CHECKOUT_ALLOW_CONFLICTS = C.GIT_CHECKOUT_ALLOW_CONFLICTS // Allow checkout to make safe updates even if conflicts are found
|
CheckoutAllowConflicts = C.GIT_CHECKOUT_ALLOW_CONFLICTS // Allow checkout to make safe updates even if conflicts are found
|
||||||
CHECKOUT_REMOVE_UNTRACKED = C.GIT_CHECKOUT_REMOVE_UNTRACKED // Remove untracked files not in index (that are not ignored)
|
CheckoutRemoveUntracked = C.GIT_CHECKOUT_REMOVE_UNTRACKED // Remove untracked files not in index (that are not ignored)
|
||||||
CHECKOUT_REMOVE_IGNORED = C.GIT_CHECKOUT_REMOVE_IGNORED // Remove ignored files not in index
|
CheckoutRemoveIgnored = C.GIT_CHECKOUT_REMOVE_IGNORED // Remove ignored files not in index
|
||||||
CHECKOUT_UPDATE_ONLY = C.GIT_CHECKOUT_UPDATE_ONLY // Only update existing files, don't create new ones
|
CheckotUpdateOnly = C.GIT_CHECKOUT_UPDATE_ONLY // Only update existing files, don't create new ones
|
||||||
CHECKOUT_DONT_UPDATE_INDEX = C.GIT_CHECKOUT_DONT_UPDATE_INDEX // Normally checkout updates index entries as it goes; this stops that
|
CheckoutDontUpdateIndex = C.GIT_CHECKOUT_DONT_UPDATE_INDEX // Normally checkout updates index entries as it goes; this stops that
|
||||||
CHECKOUT_NO_REFRESH = C.GIT_CHECKOUT_NO_REFRESH // Don't refresh index/config/etc before doing checkout
|
CheckoutNoRefresh = C.GIT_CHECKOUT_NO_REFRESH // Don't refresh index/config/etc before doing checkout
|
||||||
CHECKOUT_DISABLE_PATHSPEC_MATCH = C.GIT_CHECKOUT_DISABLE_PATHSPEC_MATCH // Treat pathspec as simple list of exact match file paths
|
CheckooutDisablePathspecMatch = C.GIT_CHECKOUT_DISABLE_PATHSPEC_MATCH // Treat pathspec as simple list of exact match file paths
|
||||||
CHECKOUT_SKIP_UNMERGED = C.GIT_CHECKOUT_SKIP_UNMERGED // Allow checkout to skip unmerged files (NOT IMPLEMENTED)
|
CheckoutSkipUnmerged = C.GIT_CHECKOUT_SKIP_UNMERGED // Allow checkout to skip unmerged files (NOT IMPLEMENTED)
|
||||||
CHECKOUT_USE_OURS = C.GIT_CHECKOUT_USE_OURS // For unmerged files, checkout stage 2 from index (NOT IMPLEMENTED)
|
CheckoutUserOurs = C.GIT_CHECKOUT_USE_OURS // For unmerged files, checkout stage 2 from index (NOT IMPLEMENTED)
|
||||||
CHECKOUT_USE_THEIRS = C.GIT_CHECKOUT_USE_THEIRS // For unmerged files, checkout stage 3 from index (NOT IMPLEMENTED)
|
CheckoutUseTheirs = C.GIT_CHECKOUT_USE_THEIRS // For unmerged files, checkout stage 3 from index (NOT IMPLEMENTED)
|
||||||
CHECKOUT_UPDATE_SUBMODULES = C.GIT_CHECKOUT_UPDATE_SUBMODULES // Recursively checkout submodules with same options (NOT IMPLEMENTED)
|
CheckoutUpdateSubmodules = C.GIT_CHECKOUT_UPDATE_SUBMODULES // Recursively checkout submodules with same options (NOT IMPLEMENTED)
|
||||||
CHECKOUT_UPDATE_SUBMODULES_IF_CHANGED = C.GIT_CHECKOUT_UPDATE_SUBMODULES_IF_CHANGED // Recursively checkout submodules if HEAD moved in super repo (NOT IMPLEMENTED)
|
CheckoutUpdateSubmodulesIfChanged = C.GIT_CHECKOUT_UPDATE_SUBMODULES_IF_CHANGED // Recursively checkout submodules if HEAD moved in super repo (NOT IMPLEMENTED)
|
||||||
)
|
)
|
||||||
|
|
||||||
type CheckoutOpts struct {
|
type CheckoutOpts struct {
|
||||||
|
|
30
object.go
30
object.go
|
@ -11,12 +11,12 @@ import "runtime"
|
||||||
type ObjectType int
|
type ObjectType int
|
||||||
|
|
||||||
const (
|
const (
|
||||||
OBJ_ANY ObjectType = C.GIT_OBJ_ANY
|
ObjectAny ObjectType = C.GIT_OBJ_ANY
|
||||||
OBJ_BAD ObjectType = C.GIT_OBJ_BAD
|
ObjectBad = C.GIT_OBJ_BAD
|
||||||
OBJ_COMMIT ObjectType = C.GIT_OBJ_COMMIT
|
ObjectCommit = C.GIT_OBJ_COMMIT
|
||||||
OBJ_TREE ObjectType = C.GIT_OBJ_TREE
|
ObjectTree = C.GIT_OBJ_TREE
|
||||||
OBJ_BLOB ObjectType = C.GIT_OBJ_BLOB
|
ObjectBlob = C.GIT_OBJ_BLOB
|
||||||
OBJ_TAG ObjectType = C.GIT_OBJ_TAG
|
ObjectTag = C.GIT_OBJ_TAG
|
||||||
)
|
)
|
||||||
|
|
||||||
type Object interface {
|
type Object interface {
|
||||||
|
@ -31,17 +31,17 @@ type gitObject struct {
|
||||||
|
|
||||||
func (t ObjectType) String() (string) {
|
func (t ObjectType) String() (string) {
|
||||||
switch (t) {
|
switch (t) {
|
||||||
case OBJ_ANY:
|
case ObjectAny:
|
||||||
return "Any"
|
return "Any"
|
||||||
case OBJ_BAD:
|
case ObjectBad:
|
||||||
return "Bad"
|
return "Bad"
|
||||||
case OBJ_COMMIT:
|
case ObjectCommit:
|
||||||
return "Commit"
|
return "Commit"
|
||||||
case OBJ_TREE:
|
case ObjectTree:
|
||||||
return "Tree"
|
return "Tree"
|
||||||
case OBJ_BLOB:
|
case ObjectBlob:
|
||||||
return "Blob"
|
return "Blob"
|
||||||
case OBJ_TAG:
|
case ObjectTag:
|
||||||
return "tag"
|
return "tag"
|
||||||
}
|
}
|
||||||
// Never reached
|
// Never reached
|
||||||
|
@ -64,17 +64,17 @@ func (o *gitObject) Free() {
|
||||||
func allocObject(cobj *C.git_object) Object {
|
func allocObject(cobj *C.git_object) Object {
|
||||||
|
|
||||||
switch ObjectType(C.git_object_type(cobj)) {
|
switch ObjectType(C.git_object_type(cobj)) {
|
||||||
case OBJ_COMMIT:
|
case ObjectCommit:
|
||||||
commit := &Commit{gitObject{cobj}}
|
commit := &Commit{gitObject{cobj}}
|
||||||
runtime.SetFinalizer(commit, (*Commit).Free)
|
runtime.SetFinalizer(commit, (*Commit).Free)
|
||||||
return commit
|
return commit
|
||||||
|
|
||||||
case OBJ_TREE:
|
case ObjectTree:
|
||||||
tree := &Tree{gitObject{cobj}}
|
tree := &Tree{gitObject{cobj}}
|
||||||
runtime.SetFinalizer(tree, (*Tree).Free)
|
runtime.SetFinalizer(tree, (*Tree).Free)
|
||||||
return tree
|
return tree
|
||||||
|
|
||||||
case OBJ_BLOB:
|
case ObjectBlob:
|
||||||
blob := &Blob{gitObject{cobj}}
|
blob := &Blob{gitObject{cobj}}
|
||||||
runtime.SetFinalizer(blob, (*Blob).Free)
|
runtime.SetFinalizer(blob, (*Blob).Free)
|
||||||
return blob
|
return blob
|
||||||
|
|
|
@ -16,15 +16,19 @@ func TestObjectPoymorphism(t *testing.T) {
|
||||||
checkFatal(t, err)
|
checkFatal(t, err)
|
||||||
|
|
||||||
obj = commit
|
obj = commit
|
||||||
if obj.Type() != OBJ_COMMIT {
|
if obj.Type() != ObjectCommit {
|
||||||
t.Fatalf("Wrong object type, expected commit, have %v", obj.Type())
|
t.Fatalf("Wrong object type, expected commit, have %v", obj.Type())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
commitTree, err := commit.Tree()
|
||||||
|
checkFatal(t, err)
|
||||||
|
commitTree.EntryCount()
|
||||||
|
|
||||||
tree, err := repo.LookupTree(treeId)
|
tree, err := repo.LookupTree(treeId)
|
||||||
checkFatal(t, err)
|
checkFatal(t, err)
|
||||||
|
|
||||||
obj = tree
|
obj = tree
|
||||||
if obj.Type() != OBJ_TREE {
|
if obj.Type() != ObjectTree {
|
||||||
t.Fatalf("Wrong object type, expected tree, have %v", obj.Type())
|
t.Fatalf("Wrong object type, expected tree, have %v", obj.Type())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -55,19 +59,19 @@ func TestObjectPoymorphism(t *testing.T) {
|
||||||
t.Fatalf("Lookup creates the wrong type")
|
t.Fatalf("Lookup creates the wrong type")
|
||||||
}
|
}
|
||||||
|
|
||||||
if obj.Type() != OBJ_TREE {
|
if obj.Type() != ObjectTree {
|
||||||
t.Fatalf("Type() doesn't agree with dynamic type")
|
t.Fatalf("Type() doesn't agree with dynamic type")
|
||||||
}
|
}
|
||||||
|
|
||||||
obj, err = repo.RevparseSingle("HEAD")
|
obj, err = repo.RevparseSingle("HEAD")
|
||||||
checkFatal(t, err)
|
checkFatal(t, err)
|
||||||
if obj.Type() != OBJ_COMMIT || obj.Id().String() != commit.Id().String() {
|
if obj.Type() != ObjectCommit || obj.Id().String() != commit.Id().String() {
|
||||||
t.Fatalf("Failed to parse the right revision")
|
t.Fatalf("Failed to parse the right revision")
|
||||||
}
|
}
|
||||||
|
|
||||||
obj, err = repo.RevparseSingle("HEAD^{tree}")
|
obj, err = repo.RevparseSingle("HEAD^{tree}")
|
||||||
checkFatal(t, err)
|
checkFatal(t, err)
|
||||||
if obj.Type() != OBJ_TREE || obj.Id().String() != tree.Id().String() {
|
if obj.Type() != ObjectTree || obj.Id().String() != tree.Id().String() {
|
||||||
t.Fatalf("Failed to parse the right revision")
|
t.Fatalf("Failed to parse the right revision")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
11
reference.go
11
reference.go
|
@ -11,9 +11,10 @@ import (
|
||||||
"unsafe"
|
"unsafe"
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
type ReferenceType int
|
||||||
SYMBOLIC = C.GIT_REF_SYMBOLIC
|
const (
|
||||||
OID = C.GIT_REF_OID
|
ReferenceSymbolic ReferenceType = C.GIT_REF_SYMBOLIC
|
||||||
|
ReferenceOid = C.GIT_REF_OID
|
||||||
)
|
)
|
||||||
|
|
||||||
type Reference struct {
|
type Reference struct {
|
||||||
|
@ -103,8 +104,8 @@ func (v *Reference) Name() string {
|
||||||
return C.GoString(C.git_reference_name(v.ptr))
|
return C.GoString(C.git_reference_name(v.ptr))
|
||||||
}
|
}
|
||||||
|
|
||||||
func (v *Reference) Type() int {
|
func (v *Reference) Type() ReferenceType {
|
||||||
return int(C.git_reference_type(v.ptr))
|
return ReferenceType(C.git_reference_type(v.ptr))
|
||||||
}
|
}
|
||||||
|
|
||||||
func (v *Reference) Free() {
|
func (v *Reference) Free() {
|
||||||
|
|
|
@ -19,11 +19,11 @@ func TestRefModification(t *testing.T) {
|
||||||
|
|
||||||
tag, err := repo.LookupReference("refs/tags/tree")
|
tag, err := repo.LookupReference("refs/tags/tree")
|
||||||
checkFatal(t, err)
|
checkFatal(t, err)
|
||||||
checkRefType(t, tag, OID)
|
checkRefType(t, tag, ReferenceOid)
|
||||||
|
|
||||||
ref, err := repo.LookupReference("HEAD")
|
ref, err := repo.LookupReference("HEAD")
|
||||||
checkFatal(t, err)
|
checkFatal(t, err)
|
||||||
checkRefType(t, ref, SYMBOLIC)
|
checkRefType(t, ref, ReferenceSymbolic)
|
||||||
|
|
||||||
if target := ref.Target(); target != nil {
|
if target := ref.Target(); target != nil {
|
||||||
t.Fatalf("Expected nil *Oid, got %v", target)
|
t.Fatalf("Expected nil *Oid, got %v", target)
|
||||||
|
@ -31,7 +31,7 @@ func TestRefModification(t *testing.T) {
|
||||||
|
|
||||||
ref, err = ref.Resolve()
|
ref, err = ref.Resolve()
|
||||||
checkFatal(t, err)
|
checkFatal(t, err)
|
||||||
checkRefType(t, ref, OID)
|
checkRefType(t, ref, ReferenceOid)
|
||||||
|
|
||||||
if target := ref.Target(); target == nil {
|
if target := ref.Target(); target == nil {
|
||||||
t.Fatalf("Expected valid target got nil")
|
t.Fatalf("Expected valid target got nil")
|
||||||
|
@ -49,7 +49,7 @@ func TestRefModification(t *testing.T) {
|
||||||
checkFatal(t, err)
|
checkFatal(t, err)
|
||||||
tag, err = repo.LookupReference("refs/tags/renamed")
|
tag, err = repo.LookupReference("refs/tags/renamed")
|
||||||
checkFatal(t, err)
|
checkFatal(t, err)
|
||||||
checkRefType(t, ref, OID)
|
checkRefType(t, ref, ReferenceOid)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -144,7 +144,7 @@ func compareStringList(t *testing.T, expected, actual []string) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func checkRefType(t *testing.T, ref *Reference, kind int) {
|
func checkRefType(t *testing.T, ref *Reference, kind ReferenceType) {
|
||||||
if ref.Type() == kind {
|
if ref.Type() == kind {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
|
@ -83,11 +83,11 @@ func (v *Repository) lookupType(oid *Oid, t ObjectType) (Object, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (v *Repository) Lookup(oid *Oid) (Object, error) {
|
func (v *Repository) Lookup(oid *Oid) (Object, error) {
|
||||||
return v.lookupType(oid, OBJ_ANY)
|
return v.lookupType(oid, ObjectAny)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (v *Repository) LookupTree(oid *Oid) (*Tree, error) {
|
func (v *Repository) LookupTree(oid *Oid) (*Tree, error) {
|
||||||
obj, err := v.lookupType(oid, OBJ_TREE)
|
obj, err := v.lookupType(oid, ObjectTree)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -96,7 +96,7 @@ func (v *Repository) LookupTree(oid *Oid) (*Tree, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (v *Repository) LookupCommit(oid *Oid) (*Commit, error) {
|
func (v *Repository) LookupCommit(oid *Oid) (*Commit, error) {
|
||||||
obj, err := v.lookupType(oid, OBJ_COMMIT)
|
obj, err := v.lookupType(oid, ObjectCommit)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -105,7 +105,7 @@ func (v *Repository) LookupCommit(oid *Oid) (*Commit, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (v *Repository) LookupBlob(oid *Oid) (*Blob, error) {
|
func (v *Repository) LookupBlob(oid *Oid) (*Blob, error) {
|
||||||
obj, err := v.lookupType(oid, OBJ_BLOB)
|
obj, err := v.lookupType(oid, ObjectBlob)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
3
tree.go
3
tree.go
|
@ -13,8 +13,9 @@ import (
|
||||||
"unsafe"
|
"unsafe"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type Filemode int
|
||||||
const (
|
const (
|
||||||
FilemodeNew = C.GIT_FILEMODE_NEW
|
FilemodeNew Filemode = C.GIT_FILEMODE_NEW
|
||||||
FilemodeTree = C.GIT_FILEMODE_TREE
|
FilemodeTree = C.GIT_FILEMODE_TREE
|
||||||
FilemodeBlob = C.GIT_FILEMODE_BLOB
|
FilemodeBlob = C.GIT_FILEMODE_BLOB
|
||||||
FilemodeBlobExecutable = C.GIT_FILEMODE_BLOB_EXECUTABLE
|
FilemodeBlobExecutable = C.GIT_FILEMODE_BLOB_EXECUTABLE
|
||||||
|
|
11
walk.go
11
walk.go
|
@ -13,11 +13,12 @@ import (
|
||||||
|
|
||||||
// RevWalk
|
// RevWalk
|
||||||
|
|
||||||
|
type SortType uint
|
||||||
const (
|
const (
|
||||||
SORT_NONE = C.GIT_SORT_NONE
|
SortNone SortType = C.GIT_SORT_NONE
|
||||||
SORT_TOPOLOGICAL = C.GIT_SORT_TOPOLOGICAL
|
SortTopological = C.GIT_SORT_TOPOLOGICAL
|
||||||
SORT_TIME = C.GIT_SORT_TIME
|
SortTime = C.GIT_SORT_TIME
|
||||||
SORT_REVERSE = C.GIT_SORT_REVERSE
|
SortReverse = C.GIT_SORT_REVERSE
|
||||||
)
|
)
|
||||||
|
|
||||||
type RevWalk struct {
|
type RevWalk struct {
|
||||||
|
@ -81,7 +82,7 @@ func (v *RevWalk) Iterate(fun RevWalkIterator) (err error) {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (v *RevWalk) Sorting(sm uint) {
|
func (v *RevWalk) Sorting(sm SortType) {
|
||||||
C.git_revwalk_sorting(v.ptr, C.uint(sm))
|
C.git_revwalk_sorting(v.ptr, C.uint(sm))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue