- GitPrimitives
changed:
#prim_git_remote_list:repo:
#prim_git_strarray_copy:src:
#prim_git_strarray_free:
- GitLibraryObject
added: #documentation
comment/format in:
#getHandleClass
#setHandleFromRef:
- GitCommand
added:42 methods
category of:
- GitRepository
class definition
added:6 methods
category of:
- stx_libscm_git
changed:
#classNamesAndAttributes
#extensionMethodNames
#preRequisites
- GitStringArray
class definition
added:7 methods
changed:
#count
#strings
category of:
#count
#count:
#strings
#strings:
- GitWorkingCopy
class definition
added: #repository
changed: #setRepository:
- GitObject
class definition
- GitRemote
added:7 methods
- GitRepositoryObject
added:6 methods
- GitTests
added: #test_02a
- GitStructure
added: #new
- GitWorkingCopyEntry
added: #isChanged
- extensions
...
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/git/GitCommand.st Sun Sep 30 22:13:12 2012 +0000
@@ -0,0 +1,309 @@
+"{ Package: 'stx:libscm/git' }"
+
+Object subclass:#GitCommand
+ instanceVariableNames:''
+ classVariableNames:'GitExecutable'
+ poolDictionaries:''
+ category:'SCM-Git-Internal'
+!
+
+GitCommand subclass:#clone
+ instanceVariableNames:'url path'
+ classVariableNames:''
+ poolDictionaries:''
+ privateIn:GitCommand
+!
+
+GitCommand subclass:#push
+ instanceVariableNames:'remote refspec'
+ classVariableNames:''
+ poolDictionaries:''
+ privateIn:GitCommand
+!
+
+!GitCommand class methodsFor:'documentation'!
+
+documentation
+"
+ A simple wrapper for git command line tool. git command is called
+ in cases there is no native nor libgit2 implementation for given
+ operation (yet).
+
+ Individual commands are wrapped in my private classes.
+
+ [author:]
+ Jan Vrany <jan.vrany@fit.cvut.cz>
+
+ [instance variables:]
+
+ [class variables:]
+
+ [see also:]
+
+"
+! !
+
+!GitCommand class methodsFor:'instance creation'!
+
+clone
+ ^clone new
+
+ "Created: / 01-10-2012 / 00:09:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+new
+ ^ self basicNew initialize.
+
+ "Created: / 16-03-2008 / 07:45:22 / janfrog"
+!
+
+push
+ ^push new
+
+ "Created: / 30-09-2012 / 23:46:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GitCommand class methodsFor:'accessing'!
+
+verbose
+
+ ^ UserPreferences current svnVerbose
+
+ "Created: / 19-03-2008 / 12:29:47 / janfrog"
+ "Modified: / 19-03-2009 / 14:00:50 / Jan Vrany <vranyj1@fel.cvut.cz>"
+ "Modified (format): / 27-12-2011 / 16:00:06 / dundee"
+!
+
+verbose:aBoolean
+
+ UserPreferences current svnVerbose:aBoolean
+
+ "Created: / 19-03-2008 / 12:29:59 / janfrog"
+ "Modified: / 19-03-2009 / 14:00:59 / Jan Vrany <vranyj1@fel.cvut.cz>"
+ "Modified (format): / 27-12-2011 / 16:00:13 / dundee"
+! !
+
+!GitCommand class methodsFor:'commands'!
+
+clone: url to: stringOfFilename
+ self clone
+ url: url;
+ path: stringOfFilename asFilename asAbsoluteFilename pathName;
+ execute
+
+ "Created: / 01-10-2012 / 00:06:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GitCommand methodsFor:'executing'!
+
+execute
+ |pipe output pid environment|
+
+ pipe := NonPositionableExternalStream makePipe.
+ output := pipe first.
+ environment := OperatingSystem getEnvironment copy.
+
+ environment at:'LANG' put:'C'.
+ pid := OperatingSystem exec:(self executable) withArguments:(self arguments)
+ environment:environment
+ fileDescriptors:{0 . pipe second fileDescriptor . pipe second fileDescriptor}
+ fork:true
+ newPgrp:false
+ inDirectory:self workingDirectory.
+ pipe second close.
+ pid isNil ifTrue:[
+ self error:'Cannot execute git command'.
+ output close.
+ ^ self.
+ ].
+ ^ self parse: output.
+
+ "
+ SVNv2::Command info: 'https://swing.fit.cvut.cz/svn/stx/libsvn'
+ "
+
+ "Created: / 11-05-2011 / 07:45:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 17-12-2011 / 19:22:00 / dundee"
+ "Modified (format): / 27-12-2011 / 15:53:54 / dundee"
+ "Modified: / 30-09-2012 / 23:48:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GitCommand methodsFor:'private'!
+
+arguments
+
+ ^ OrderedCollection streamContents:[:s |
+ s nextPut:self executable.
+ self argumentsGlobalOn:s.
+ s nextPut:self command.
+ self argumentsCommandOn:s.
+ ].
+
+ "Created: / 11-05-2011 / 07:58:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified (format): / 27-12-2011 / 15:47:23 / dundee"
+!
+
+argumentsCommandOn:stream
+ "Called to get command specific options"
+
+ self shouldImplement
+
+ "Created: / 11-05-2011 / 07:58:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified (format): / 27-12-2011 / 15:46:59 / dundee"
+!
+
+argumentsGlobalOn:arg
+ "Called to get global options"
+
+ "Created: / 11-05-2011 / 07:58:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified (format): / 27-12-2011 / 15:47:10 / dundee"
+ "Modified: / 30-09-2012 / 23:43:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+command
+ "Returns the git 'command' option, i.e. commit,
+ push, pull, ..."
+
+ ^self class nameWithoutPrefix
+
+ "
+ GitCommand::push basicNew command
+ "
+
+ "Created: / 11-05-2011 / 07:58:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified (format): / 27-12-2011 / 15:47:17 / dundee"
+ "Modified: / 30-09-2012 / 23:37:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+executable
+ | h |
+
+ GitExecutable notNil ifTrue:[^ GitExecutable].
+
+ OperatingSystem isMSWINDOWSlike ifTrue:[
+"/ h := Win32OperatingSystem registryEntry
+"/ key:'HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\App Paths\svn.exe'.
+"/ h notNil ifTrue:[GitExecutable := h valueNamed:''].
+"/ GitExecutable notEmptyOrNil ifTrue:[^ GitExecutable]
+ GitExecutable := OperatingSystem pathOfCommand:'git'.
+ ^GitExecutable
+ ].
+
+ OperatingSystem isUNIXlike ifTrue:[
+ GitExecutable := OperatingSystem pathOfCommand:'git'.
+ ^GitExecutable
+ ].
+
+ self error:'Git executable not found!!'.
+
+
+ "
+ GitExecutable := nil.
+ self basicNew executable
+ "
+
+ "Created: / 11-05-2011 / 07:59:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 09-12-2011 / 22:48:33 / dundee"
+ "Modified (format): / 27-12-2011 / 15:51:06 / dundee"
+ "Modified: / 01-10-2012 / 00:10:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+parse: stream
+
+ "Parses output of svn 'command' option, i.e. commit,
+ log, update, checkout, etc."
+
+ ^ self subclassResponsibility
+
+ "Created: / 11-05-2011 / 07:58:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Created: / 17-12-2011 / 17:02:41 / dundee"
+!
+
+workingDirectory
+
+ ^ Filename currentDirectory pathName
+
+ "Created: / 11-05-2011 / 08:26:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified (format): / 27-12-2011 / 15:54:08 / dundee"
+! !
+
+!GitCommand::clone methodsFor:'accessing'!
+
+path
+ ^ path
+!
+
+path:something
+ path := something.
+!
+
+url
+ ^ url
+!
+
+url:something
+ url := something.
+! !
+
+!GitCommand::clone methodsFor:'private'!
+
+argumentsCommandOn:stream
+ "Called to get command specific options"
+
+ stream nextPut: url; nextPut: path
+
+ "Created: / 01-10-2012 / 00:04:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+parse:stream
+ "superclass GitCommand says that I am responsible to implement this method"
+
+ ^ ''
+
+ "Modified: / 01-10-2012 / 00:11:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GitCommand::push methodsFor:'accessing'!
+
+refspec
+ ^ refspec
+!
+
+refspec:something
+ refspec := something.
+!
+
+remote
+ ^ remote
+!
+
+remote:something
+ remote := something.
+! !
+
+!GitCommand::push methodsFor:'private'!
+
+argumentsCommandOn:stream
+ "Called to get command specific options"
+
+ stream nextPutAll: remote.
+ refspec notNil ifTrue:[
+ stream nextPutAll: refspec.
+ ]
+
+ "Created: / 30-09-2012 / 23:44:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+parse:stream
+ "superclass GitCommand says that I am responsible to implement this method"
+
+ ^ ''
+
+ "Modified: / 01-10-2012 / 00:11:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GitCommand class methodsFor:'documentation'!
+
+version_SVN
+ ^ '$Id:: $'
+! !
--- a/git/GitLibraryObject.st Sun Sep 30 14:31:09 2012 +0000
+++ b/git/GitLibraryObject.st Sun Sep 30 22:13:12 2012 +0000
@@ -7,6 +7,25 @@
category:'SCM-Git-Model'
!
+!GitLibraryObject class methodsFor:'documentation'!
+
+documentation
+"
+ An abstract superclass for all libgit2 objects.
+
+ [author:]
+ Jan Vrany <jan.vrany@fit.cvut.cz>
+
+ [instance variables:]
+ handle <GitHandle> a pointer to underlayng
+ C object (structure)
+
+ [class variables:]
+
+ [see also:]
+
+"
+! !
!GitLibraryObject methodsFor:'finalization'!
@@ -42,6 +61,8 @@
!
getHandleClass
+ "Returns a class of my handle."
+
^self subclassResponsibility
"Created: / 17-09-2012 / 21:19:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
@@ -74,6 +95,10 @@
!
setHandleFromRef: aByteArray
+ "Initalized a handle from a reference. The passed bytearray
+ is supposed to contain a C pointer data to the underlaing
+ C object"
+
self assert: aByteArray isByteArray.
self assert: aByteArray size == ExternalAddress pointerSize.
self setHandle: (self getHandleClass newAddress: (aByteArray longAt: 1))
--- a/git/GitObject.st Sun Sep 30 14:31:09 2012 +0000
+++ b/git/GitObject.st Sun Sep 30 22:13:12 2012 +0000
@@ -1,7 +1,7 @@
"{ Package: 'stx:libscm/git' }"
-GitLibraryObject subclass:#GitObject
- instanceVariableNames:'oid repository'
+GitRepositoryObject subclass:#GitObject
+ instanceVariableNames:'oid'
classVariableNames:''
poolDictionaries:'GitObjectType'
category:'SCM-Git-Model'
@@ -49,10 +49,6 @@
^ oid
"Modified: / 30-09-2012 / 10:39:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-repository
- ^ repository
! !
!GitObject methodsFor:'initialization'!
@@ -61,12 +57,6 @@
oid := aGitOid
"Created: / 10-09-2012 / 18:54:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-setRepository: aGitRepository
- repository := aGitRepository
-
- "Created: / 10-09-2012 / 18:50:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!GitObject methodsFor:'initialization & release'!
--- a/git/GitPrimitives.st Sun Sep 30 14:31:09 2012 +0000
+++ b/git/GitPrimitives.st Sun Sep 30 22:13:12 2012 +0000
@@ -1491,8 +1491,10 @@
prim_git_remote_list: remotes_list repo: repo
- <cdecl: int32 "git_remote_list" ( GitStrarrayStructure GitRepositoryHandle ) >
+ <cdecl: int32 "git_remote_list" ( GitStringArray GitRepositoryHandle ) >
self primitiveFailed
+
+ "Modified: / 30-09-2012 / 20:19:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
prim_git_remote_load: out repo: repo name: name
@@ -1899,14 +1901,18 @@
prim_git_strarray_copy: tgt src: src
- <cdecl: int32 "git_strarray_copy" ( GitStrarrayStructure GitStrarrayStructure ) >
+ <cdecl: int32 "git_strarray_copy" ( GitStringArray GitStrarrayStructure ) >
self primitiveFailed
+
+ "Modified: / 30-09-2012 / 20:20:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
prim_git_strarray_free: array
- <cdecl: void "git_strarray_free" ( GitStrarrayStructure ) >
+ <cdecl: void "git_strarray_free" ( GitStringArray ) >
self primitiveFailed
+
+ "Modified: / 30-09-2012 / 20:20:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
prim_git_submodule_add_finalize: submodule
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/git/GitRemote.st Sun Sep 30 22:13:12 2012 +0000
@@ -0,0 +1,80 @@
+"{ Package: 'stx:libscm/git' }"
+
+GitRepositoryObject subclass:#GitRemote
+ instanceVariableNames:'name'
+ classVariableNames:''
+ poolDictionaries:'GitObjectType'
+ category:'SCM-Git-Model'
+!
+
+!GitRemote class methodsFor:'documentation'!
+
+documentation
+"
+ A GitRemote represents a remote repository.
+
+ [author:]
+ Jan Vrany <jan.vrany@fit.cvut.cz>
+
+ [instance variables:]
+
+ [class variables:]
+
+ [see also:]
+
+"
+! !
+
+!GitRemote methodsFor:'accessing'!
+
+name
+ ^ name
+! !
+
+!GitRemote methodsFor:'initialization'!
+
+setName: aString
+ name := aString
+
+ "Created: / 30-09-2012 / 20:37:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GitRemote methodsFor:'initialization & release'!
+
+free
+ handle notNil ifTrue:[
+ GitPrimitives prim_git_remote_free: handle.
+ handle := nil.
+ ].
+
+ "Created: / 30-09-2012 / 23:29:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GitRemote methodsFor:'printing & storing'!
+
+printOn:aStream
+ "append a printed representation if the receiver to the argument, aStream"
+
+ super printOn:aStream.
+ aStream nextPut:$(.
+ name printOn:aStream.
+ aStream nextPut:$).
+
+ "Modified: / 30-09-2012 / 20:38:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GitRemote methodsFor:'private-accessing'!
+
+getHandleClass
+ "Returns a class of my handle."
+
+ ^GitRemoteHandle
+
+ "Created: / 30-09-2012 / 20:33:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GitRemote class methodsFor:'documentation'!
+
+version_SVN
+ ^ '$Id:: $'
+! !
--- a/git/GitRepository.st Sun Sep 30 14:31:09 2012 +0000
+++ b/git/GitRepository.st Sun Sep 30 22:13:12 2012 +0000
@@ -1,7 +1,7 @@
"{ Package: 'stx:libscm/git' }"
GitLibraryObject subclass:#GitRepository
- instanceVariableNames:'path workdir index'
+ instanceVariableNames:'path workdir index remotes'
classVariableNames:''
poolDictionaries:'GitObjectType GitStatusCodes'
category:'SCM-Git-Model'
@@ -13,6 +13,13 @@
clone: url to: stringOrDirectory
| dir ref fetchStats checkoutStats options |
+ (url asString startsWith: 'file://') ifTrue:[
+ "Arghhh...local transport not yet supported by libgit2, use command line..."
+ GitCommand clone: url to: stringOrDirectory pathName.
+ ^self open: stringOrDirectory pathName
+ ].
+
+
dir := stringOrDirectory asFilename.
dir exists ifTrue:[
GitError raiseErrorString:'Destination directory already exists'.
@@ -35,7 +42,7 @@
setPath: dir pathName;
yourself
- "Created: / 19-09-2012 / 15:27:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Created: / 01-10-2012 / 00:09:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
open: aString
@@ -78,6 +85,23 @@
^ path
!
+remotes
+
+ remotes isNil ifTrue:[
+ | list |
+
+ list := GitStringArray new.
+ GitError raiseIfError:(GitPrimitives prim_git_remote_list: list repo: handle).
+ remotes := Dictionary new.
+ list do:[:name|
+ remotes at: name put: (self remoteNamed: name)
+ ].
+ ].
+ ^remotes.
+
+ "Created: / 30-09-2012 / 20:15:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
workingCopy
self isBare ifTrue:[
GitError raiseErrorString: 'Repository is bare'.
@@ -144,10 +168,35 @@
^self lookup: oid type: OBJ_COMMIT.
"Created: / 25-09-2012 / 14:51:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+push: aGitRemote
+ "pushes all changes to given remote repository"
+
+ GitCommand push
+ remote: aGitRemote name;
+ execute
+
+ "Created: / 30-09-2012 / 23:46:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!GitRepository methodsFor:'copying'!
+cloneTo: aStringOrFilename"^<GitRepository>"
+
+ "Clones the receiver to given directory. And equivalent to
+
+ git clone <path> <clonePath>
+
+ "
+
+ ^GitRepository
+ clone: ('file://', self path )
+ to: (aStringOrFilename)
+
+ "Created: / 30-09-2012 / 19:07:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
shallowCopy
^self class open: path
@@ -172,14 +221,6 @@
].
"Created: / 17-09-2012 / 21:16:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-setHandleFromRef: aByteArray
- self assert: aByteArray isByteArray.
- self assert: aByteArray size == ExternalAddress pointerSize.
- self setHandle: (self getHandleClass newAddress: (aByteArray longAt: 1))
-
- "Created: / 25-09-2012 / 20:55:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!GitRepository methodsFor:'lookup'!
@@ -246,6 +287,20 @@
"Created: / 17-09-2012 / 21:20:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
+remoteNamed: name
+ | ref err |
+
+ ref := ByteArray new: ExternalBytes sizeofPointer.
+ err := GitPrimitives prim_git_remote_load: ref repo: handle name: name.
+ GitError raiseIfError: err.
+ ^GitRemote new
+ setHandleFromRef: ref;
+ setRepository: self;
+ setName: name
+
+ "Created: / 30-09-2012 / 20:16:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
statusOf: aFilename
| ref err |
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/git/GitRepositoryObject.st Sun Sep 30 22:13:12 2012 +0000
@@ -0,0 +1,49 @@
+"{ Package: 'stx:libscm/git' }"
+
+GitLibraryObject subclass:#GitRepositoryObject
+ instanceVariableNames:'repository'
+ classVariableNames:''
+ poolDictionaries:''
+ category:'SCM-Git-Model'
+!
+
+!GitRepositoryObject class methodsFor:'documentation'!
+
+documentation
+"
+ An abstract superclass for all objects that know the
+ repository they belong to
+
+ [author:]
+ Jan Vrany <jan.vrany@fit.cvut.cz>
+
+ [instance variables:]
+ repository <GitRepository> a repository which the object
+ belong to.
+
+ [class variables:]
+
+ [see also:]
+
+"
+! !
+
+!GitRepositoryObject methodsFor:'accessing'!
+
+repository
+ ^ repository
+! !
+
+!GitRepositoryObject methodsFor:'initialization'!
+
+setRepository: aGitRepository
+ repository := aGitRepository
+
+ "Created: / 10-09-2012 / 18:50:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GitRepositoryObject class methodsFor:'documentation'!
+
+version_SVN
+ ^ '$Id:: $'
+! !
--- a/git/GitStrarrayStructure.st Sun Sep 30 14:31:09 2012 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,56 +0,0 @@
-"{ Package: 'stx:libscm/git' }"
-
-GitStructure subclass:#GitStrarrayStructure
- instanceVariableNames:''
- classVariableNames:''
- poolDictionaries:''
- category:'SCM-Git-Internal-Structures'
-!
-
-
-!GitStrarrayStructure class methodsFor:'accessing'!
-
-libraryName
-
- OperatingSystem isUNIXlike ifTrue:[^'libgit2.so'].
-
- OperatingSystem isMSWINDOWSlike ifTrue:[^'git2.dll'].
-
- self error:'Library name for host OS is not known'
-!
-
-structSize
- "Returns size of undelaying structure in bytes"
-
- ^8
-! !
-
-!GitStrarrayStructure methodsFor:'accessing'!
-
-count
- "Returns a Cface::CLongNode"
-
- ^self longLongAt:1 + 4
-!
-
-count: value
-
- self longLongAt:1 + 4 put:value
-!
-
-strings
- "Returns (pointer-to (pointer-to char))"
-
- ^self pointerAt:1 + 0
-!
-
-strings: value
-
- self pointerAt:1 + 0 put:value
-! !
-
-!GitStrarrayStructure class methodsFor:'documentation'!
-
-version_SVN
- ^ '$Id:: $'
-! !
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/git/GitStringArray.st Sun Sep 30 22:13:12 2012 +0000
@@ -0,0 +1,130 @@
+"{ Package: 'stx:libscm/git' }"
+
+GitStructure subclass:#GitStringArray
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'SCM-Git-Internal-Structures'
+!
+
+!GitStringArray class methodsFor:'documentation'!
+
+documentation
+"
+ A git_strarray wrapper. GitStringArray is for internal usage only.
+ Do not use it your code
+
+ [author:]
+ Jan Vrany <jan.vrany@fit.cvut.cz>
+
+ [instance variables:]
+
+ [class variables:]
+
+ [see also:]
+
+"
+! !
+
+!GitStringArray class methodsFor:'accessing'!
+
+libraryName
+
+ OperatingSystem isUNIXlike ifTrue:[^'libgit2.so'].
+
+ OperatingSystem isMSWINDOWSlike ifTrue:[^'git2.dll'].
+
+ self error:'Library name for host OS is not known'
+!
+
+structSize
+ "Returns size of undelaying structure in bytes"
+
+ ^8
+! !
+
+!GitStringArray methodsFor:'accessing'!
+
+collect: aBlock
+ | strings newCollection |
+
+ "Reimplemented for speed"
+
+ strings := self strings.
+ newCollection := Array new: self count.
+ 1 to: self count do:[:index|
+ | val |
+
+ val := aBlock value: (strings pointerAt: ((index - 1) * ExternalBytes sizeofPointer) + 1) copyCStringFromHeap.
+ newCollection at: index put: val.
+ ].
+ ^newCollection
+
+ "Created: / 30-09-2012 / 20:32:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+do: aBlock
+ | strings |
+
+ "Reimplemented for speed"
+
+ strings := self strings.
+ 1 to: self count do:[:index|
+ aBlock value: (strings pointerAt: ((index - 1) * ExternalBytes sizeofPointer) + 1) copyCStringFromHeap
+ ]
+
+ "Created: / 30-09-2012 / 20:13:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GitStringArray methodsFor:'accessing-private'!
+
+count
+ "Returns a Cface::CLongNode"
+
+ ^self longAt:1 + 4
+
+ "Modified: / 30-09-2012 / 20:23:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+count: value
+
+ self longLongAt:1 + 4 put:value
+!
+
+strings
+ "Returns (pointer-to (pointer-to char))"
+
+ ^ExternalBytes
+ address:(self longAt:1 + 0)
+ size:(self count * ExternalBytes sizeofPointer)
+
+ "Modified: / 30-09-2012 / 20:32:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+strings: value
+
+ self pointerAt:1 + 0 put:value
+! !
+
+!GitStringArray methodsFor:'adding'!
+
+addAll:aCollection
+ self shouldNotImplement. "/ Cannot grow!!
+
+ "Created: / 30-09-2012 / 19:56:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GitStringArray methodsFor:'finalization'!
+
+finalize
+ GitPrimitives prim_git_strarray_free: self.
+ self setAddress:0 size:0
+
+ "Created: / 30-09-2012 / 19:58:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!GitStringArray class methodsFor:'documentation'!
+
+version_SVN
+ ^ '$Id:: $'
+! !
--- a/git/GitStructure.st Sun Sep 30 14:31:09 2012 +0000
+++ b/git/GitStructure.st Sun Sep 30 22:13:12 2012 +0000
@@ -16,6 +16,12 @@
"Created: / 19-09-2012 / 14:04:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
+new
+ ^self new: self structSize
+
+ "Created: / 30-09-2012 / 20:21:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
newAddress: address
^self address: address size: self structSize.
--- a/git/GitTests.st Sun Sep 30 14:31:09 2012 +0000
+++ b/git/GitTests.st Sun Sep 30 22:13:12 2012 +0000
@@ -95,6 +95,45 @@
self assert: wc commit parents anElement oid = (GitOid fromString:'541c09aa382a56ec87b813b3fb6ea84e17909889').
"Created: / 19-09-2012 / 23:06:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+test_02a
+
+ "Test scenario
+ - clone an existing repo
+ - modify some files
+ - commit changes
+ - push to origin
+
+ "
+
+ | repoOrig repoClone wc file1_txt commit_oid commit |
+
+ repoOrig := self repositoryNamed: 'test_repo_01'.
+ "
+ UserPreferences fileBrowserClass openOn: repoOrig path
+ "
+ repoClone := repoOrig cloneTo: (repositories add: Filename newTemporary).
+ "
+ UserPreferences fileBrowserClass openOn: repoClone path
+ "
+ wc := repoClone workingCopy.
+ "Modify some file"
+ file1_txt := wc / 'file1.txt'.
+ self assert: file1_txt isModified not.
+
+ (file1_txt) writingFileDo:[:s|
+ s nextPutAll: 'modified from test_02a'.
+ ].
+ wc stage.
+ commit_oid := (wc commit: 'test_02a commit 1') oid.
+
+ wc repository push: (wc repository remotes at:#origin).
+
+ commit := repoOrig lookup: commit_oid.
+ self assert: commit message = 'test_02a commit 1'
+
+ "Created: / 30-09-2012 / 19:01:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!GitTests class methodsFor:'documentation'!
--- a/git/GitWorkingCopy.st Sun Sep 30 14:31:09 2012 +0000
+++ b/git/GitWorkingCopy.st Sun Sep 30 22:13:12 2012 +0000
@@ -1,7 +1,7 @@
"{ Package: 'stx:libscm/git' }"
-GitLibraryObject subclass:#GitWorkingCopy
- instanceVariableNames:'repository reference commit index root detached'
+GitRepositoryObject subclass:#GitWorkingCopy
+ instanceVariableNames:'reference commit index root detached'
classVariableNames:''
poolDictionaries:'GitStatusCodes'
category:'SCM-Git-Model'
@@ -149,8 +149,8 @@
!GitWorkingCopy methodsFor:'initialization'!
setRepository: aGitRepository
+ super setRepository: aGitRepository.
handle := aGitRepository getHandle.
- repository := aGitRepository.
root := GitWorkingCopyEntry wc: self path: repository workdir.
"Created: / 19-09-2012 / 09:43:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
--- a/git/GitWorkingCopyEntry.st Sun Sep 30 14:31:09 2012 +0000
+++ b/git/GitWorkingCopyEntry.st Sun Sep 30 22:13:12 2012 +0000
@@ -92,6 +92,18 @@
!GitWorkingCopyEntry methodsFor:'testing'!
+isChanged
+ | status |
+
+ status := self status.
+ ^status ~~ GIT_STATUS_CURRENT
+ and:[ status ~~ GIT_STATUS_IGNORED
+ and: [ (status bitAnd: GIT_STATUS_WT_NEW | GIT_STATUS_WT_MODIFIED | GIT_STATUS_WT_DELETED) ~~ 0
+ and: [(status bitAnd: GIT_STATUS_INDEX_NEW | GIT_STATUS_INDEX_MODIFIED | GIT_STATUS_INDEX_DELETED) ~~ 0]]].
+
+ "Created: / 30-09-2012 / 18:54:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
isDeleted
^(self status bitAnd:(GIT_STATUS_INDEX_DELETED | GIT_STATUS_WT_DELETED)) ~~ 0
--- a/git/Make.proto Sun Sep 30 14:31:09 2012 +0000
+++ b/git/Make.proto Sun Sep 30 22:13:12 2012 +0000
@@ -130,6 +130,7 @@
$(OUTDIR)GitBlobHandle.$(O) GitBlobHandle.$(H): GitBlobHandle.st $(INCLUDE_TOP)/stx/libbasic/ExternalAddress.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GitBranchType.$(O) GitBranchType.$(H): GitBranchType.st $(INCLUDE_TOP)/stx/libbasic/SharedPool.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GitCheckoutStrategy.$(O) GitCheckoutStrategy.$(H): GitCheckoutStrategy.st $(INCLUDE_TOP)/stx/libbasic/SharedPool.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GitCommand.$(O) GitCommand.$(H): GitCommand.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GitCommitHandle.$(O) GitCommitHandle.$(H): GitCommitHandle.st $(INCLUDE_TOP)/stx/libbasic/ExternalAddress.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GitConfigHandle.$(O) GitConfigHandle.$(H): GitConfigHandle.st $(INCLUDE_TOP)/stx/libbasic/ExternalAddress.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GitCvarType.$(O) GitCvarType.$(H): GitCvarType.st $(INCLUDE_TOP)/stx/libbasic/SharedPool.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
@@ -190,7 +191,6 @@
$(OUTDIR)GitIndexTimeStructure.$(O) GitIndexTimeStructure.$(H): GitIndexTimeStructure.st $(INCLUDE_TOP)/stx/libscm/git/GitStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/UninterpretedBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/ArrayedCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/SequenceableCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/Collection.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GitIndexerStatsStructure.$(O) GitIndexerStatsStructure.$(H): GitIndexerStatsStructure.st $(INCLUDE_TOP)/stx/libscm/git/GitStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/UninterpretedBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/ArrayedCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/SequenceableCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/Collection.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GitNoteDataStructure.$(O) GitNoteDataStructure.$(H): GitNoteDataStructure.st $(INCLUDE_TOP)/stx/libscm/git/GitStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/UninterpretedBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/ArrayedCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/SequenceableCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/Collection.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)GitObject.$(O) GitObject.$(H): GitObject.st $(INCLUDE_TOP)/stx/libscm/git/GitObjectType.$(H) $(INCLUDE_TOP)/stx/libscm/git/GitLibraryObject.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GitOdbBackendStructure.$(O) GitOdbBackendStructure.$(H): GitOdbBackendStructure.st $(INCLUDE_TOP)/stx/libscm/git/GitStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/UninterpretedBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/ArrayedCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/SequenceableCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/Collection.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GitOdbStreamStructure.$(O) GitOdbStreamStructure.$(H): GitOdbStreamStructure.st $(INCLUDE_TOP)/stx/libscm/git/GitStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/UninterpretedBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/ArrayedCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/SequenceableCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/Collection.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GitReference.$(O) GitReference.$(H): GitReference.st $(INCLUDE_TOP)/stx/libscm/git/GitLibraryObject.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
@@ -198,16 +198,19 @@
$(OUTDIR)GitRemoteHeadStructure.$(O) GitRemoteHeadStructure.$(H): GitRemoteHeadStructure.st $(INCLUDE_TOP)/stx/libscm/git/GitStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/UninterpretedBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/ArrayedCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/SequenceableCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/Collection.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GitRepository.$(O) GitRepository.$(H): GitRepository.st $(INCLUDE_TOP)/stx/libscm/git/GitObjectType.$(H) $(INCLUDE_TOP)/stx/libscm/git/GitStatusCodes.$(H) $(INCLUDE_TOP)/stx/libscm/git/GitLibraryObject.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GitRepositoryInitOptionsStructure.$(O) GitRepositoryInitOptionsStructure.$(H): GitRepositoryInitOptionsStructure.st $(INCLUDE_TOP)/stx/libscm/git/GitStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/UninterpretedBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/ArrayedCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/SequenceableCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/Collection.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GitRepositoryObject.$(O) GitRepositoryObject.$(H): GitRepositoryObject.st $(INCLUDE_TOP)/stx/libscm/git/GitLibraryObject.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GitSignature.$(O) GitSignature.$(H): GitSignature.st $(INCLUDE_TOP)/stx/libscm/git/GitLibraryObject.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GitSignatureStructure.$(O) GitSignatureStructure.$(H): GitSignatureStructure.st $(INCLUDE_TOP)/stx/libscm/git/GitStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/UninterpretedBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/ArrayedCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/SequenceableCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/Collection.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GitStatusOptionsStructure.$(O) GitStatusOptionsStructure.$(H): GitStatusOptionsStructure.st $(INCLUDE_TOP)/stx/libscm/git/GitStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/UninterpretedBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/ArrayedCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/SequenceableCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/Collection.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)GitStrarrayStructure.$(O) GitStrarrayStructure.$(H): GitStrarrayStructure.st $(INCLUDE_TOP)/stx/libscm/git/GitStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/UninterpretedBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/ArrayedCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/SequenceableCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/Collection.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GitStringArray.$(O) GitStringArray.$(H): GitStringArray.st $(INCLUDE_TOP)/stx/libscm/git/GitStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/UninterpretedBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/ArrayedCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/SequenceableCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/Collection.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GitTimeStructure.$(O) GitTimeStructure.$(H): GitTimeStructure.st $(INCLUDE_TOP)/stx/libscm/git/GitStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalStructure.$(H) $(INCLUDE_TOP)/stx/libbasic/ExternalBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/UninterpretedBytes.$(H) $(INCLUDE_TOP)/stx/libbasic/ArrayedCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/SequenceableCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/Collection.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)GitWorkingCopy.$(O) GitWorkingCopy.$(H): GitWorkingCopy.st $(INCLUDE_TOP)/stx/libscm/git/GitStatusCodes.$(H) $(INCLUDE_TOP)/stx/libscm/git/GitLibraryObject.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)GitWorkingCopyEntry.$(O) GitWorkingCopyEntry.$(H): GitWorkingCopyEntry.st $(INCLUDE_TOP)/stx/libscm/git/GitStatusCodes.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)GitCommit.$(O) GitCommit.$(H): GitCommit.st $(INCLUDE_TOP)/stx/libscm/git/GitObject.$(H) $(INCLUDE_TOP)/stx/libscm/git/GitLibraryObject.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)GitTag.$(O) GitTag.$(H): GitTag.st $(INCLUDE_TOP)/stx/libscm/git/GitObject.$(H) $(INCLUDE_TOP)/stx/libscm/git/GitLibraryObject.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)GitTree.$(O) GitTree.$(H): GitTree.st $(INCLUDE_TOP)/stx/libscm/git/GitObject.$(H) $(INCLUDE_TOP)/stx/libscm/git/GitLibraryObject.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GitObject.$(O) GitObject.$(H): GitObject.st $(INCLUDE_TOP)/stx/libscm/git/GitObjectType.$(H) $(INCLUDE_TOP)/stx/libscm/git/GitRepositoryObject.$(H) $(INCLUDE_TOP)/stx/libscm/git/GitLibraryObject.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GitRemote.$(O) GitRemote.$(H): GitRemote.st $(INCLUDE_TOP)/stx/libscm/git/GitObjectType.$(H) $(INCLUDE_TOP)/stx/libscm/git/GitRepositoryObject.$(H) $(INCLUDE_TOP)/stx/libscm/git/GitLibraryObject.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GitWorkingCopy.$(O) GitWorkingCopy.$(H): GitWorkingCopy.st $(INCLUDE_TOP)/stx/libscm/git/GitStatusCodes.$(H) $(INCLUDE_TOP)/stx/libscm/git/GitRepositoryObject.$(H) $(INCLUDE_TOP)/stx/libscm/git/GitLibraryObject.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GitCommit.$(O) GitCommit.$(H): GitCommit.st $(INCLUDE_TOP)/stx/libscm/git/GitObject.$(H) $(INCLUDE_TOP)/stx/libscm/git/GitRepositoryObject.$(H) $(INCLUDE_TOP)/stx/libscm/git/GitLibraryObject.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GitTag.$(O) GitTag.$(H): GitTag.st $(INCLUDE_TOP)/stx/libscm/git/GitObject.$(H) $(INCLUDE_TOP)/stx/libscm/git/GitRepositoryObject.$(H) $(INCLUDE_TOP)/stx/libscm/git/GitLibraryObject.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)GitTree.$(O) GitTree.$(H): GitTree.st $(INCLUDE_TOP)/stx/libscm/git/GitObject.$(H) $(INCLUDE_TOP)/stx/libscm/git/GitRepositoryObject.$(H) $(INCLUDE_TOP)/stx/libscm/git/GitLibraryObject.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)extensions.$(O): extensions.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
# ENDMAKEDEPEND --- do not remove this line
--- a/git/Make.spec Sun Sep 30 14:31:09 2012 +0000
+++ b/git/Make.spec Sun Sep 30 22:13:12 2012 +0000
@@ -51,6 +51,7 @@
COMMON_CLASSES= \
GitLibraryObject \
+ GitRepositoryObject \
GitStatusCodes \
GitErrorKlass \
GitStructure \
@@ -109,7 +110,6 @@
GitSignatureStructure \
GitStatusOptionsStructure \
GitStatusShowType \
- GitStrarrayStructure \
GitSubmoduleHandle \
GitSubmoduleIgnoreType \
GitSubmoduleStatusType \
@@ -132,12 +132,16 @@
GitAuthorQuery \
GitCommitterQuery \
GitReference \
+ GitCommand \
+ GitStringArray \
+ GitRemote \
COMMON_OBJS= \
$(OUTDIR)GitLibraryObject.$(O) \
+ $(OUTDIR)GitRepositoryObject.$(O) \
$(OUTDIR)GitStatusCodes.$(O) \
$(OUTDIR)GitErrorKlass.$(O) \
$(OUTDIR)GitStructure.$(O) \
@@ -196,7 +200,6 @@
$(OUTDIR)GitSignatureStructure.$(O) \
$(OUTDIR)GitStatusOptionsStructure.$(O) \
$(OUTDIR)GitStatusShowType.$(O) \
- $(OUTDIR)GitStrarrayStructure.$(O) \
$(OUTDIR)GitSubmoduleHandle.$(O) \
$(OUTDIR)GitSubmoduleIgnoreType.$(O) \
$(OUTDIR)GitSubmoduleStatusType.$(O) \
@@ -219,6 +222,9 @@
$(OUTDIR)GitAuthorQuery.$(O) \
$(OUTDIR)GitCommitterQuery.$(O) \
$(OUTDIR)GitReference.$(O) \
+ $(OUTDIR)GitCommand.$(O) \
+ $(OUTDIR)GitStringArray.$(O) \
+ $(OUTDIR)GitRemote.$(O) \
$(OUTDIR)extensions.$(O) \
--- a/git/abbrev.stc Sun Sep 30 14:31:09 2012 +0000
+++ b/git/abbrev.stc Sun Sep 30 22:13:12 2012 +0000
@@ -2,6 +2,7 @@
# this file is needed for stc to be able to compile modules independently.
# it provides information about a classes filename, category and especially namespace.
GitLibraryObject GitLibraryObject stx:libscm/git 'SCM-Git-Model' 0
+GitRepositoryObject GitRepositoryObject stx:libscm/git 'SCM-Git-Model' 0
GitStatusCodes GitStatusCodes stx:libscm/git 'SCM-Git-Internal-Constants' 0
GitErrorKlass GitErrorKlass stx:libscm/git 'Git-Internal-Constants' 0
GitStructure GitStructure stx:libscm/git 'SCM-Git-Internal-Structures' 1
@@ -60,7 +61,6 @@
GitSignatureStructure GitSignatureStructure stx:libscm/git 'SCM-Git-Internal-Structures' 1
GitStatusOptionsStructure GitStatusOptionsStructure stx:libscm/git 'SCM-Git-Internal-Structures' 1
GitStatusShowType GitStatusShowType stx:libscm/git 'Git-Internal-Constants' 0
-GitStrarrayStructure GitStrarrayStructure stx:libscm/git 'SCM-Git-Internal-Structures' 1
GitSubmoduleHandle GitSubmoduleHandle stx:libscm/git 'Git-Internal-Handles' 0
GitSubmoduleIgnoreType GitSubmoduleIgnoreType stx:libscm/git 'Git-Internal-Constants' 0
GitSubmoduleStatusType GitSubmoduleStatusType stx:libscm/git 'Git-Internal-Constants' 0
@@ -85,3 +85,6 @@
GitAuthorQuery GitAuthorQuery stx:libscm/git 'SCM-Git-Exceptions' 1
GitCommitterQuery GitCommitterQuery stx:libscm/git 'SCM-Git-Exceptions' 1
GitReference GitReference stx:libscm/git 'SCM-Git-Model' 0
+GitCommand GitCommand stx:libscm/git 'SCM-Git-Internal' 0
+GitStringArray GitStringArray stx:libscm/git 'SCM-Git-Internal-Structures' 1
+GitRemote GitRemote stx:libscm/git 'SCM-Git-Model' 0
--- a/git/bc.mak Sun Sep 30 14:31:09 2012 +0000
+++ b/git/bc.mak Sun Sep 30 22:13:12 2012 +0000
@@ -66,6 +66,7 @@
$(OUTDIR)GitBlobHandle.$(O) GitBlobHandle.$(H): GitBlobHandle.st $(INCLUDE_TOP)\stx\libbasic\ExternalAddress.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GitBranchType.$(O) GitBranchType.$(H): GitBranchType.st $(INCLUDE_TOP)\stx\libbasic\SharedPool.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GitCheckoutStrategy.$(O) GitCheckoutStrategy.$(H): GitCheckoutStrategy.st $(INCLUDE_TOP)\stx\libbasic\SharedPool.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GitCommand.$(O) GitCommand.$(H): GitCommand.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GitCommitHandle.$(O) GitCommitHandle.$(H): GitCommitHandle.st $(INCLUDE_TOP)\stx\libbasic\ExternalAddress.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GitConfigHandle.$(O) GitConfigHandle.$(H): GitConfigHandle.st $(INCLUDE_TOP)\stx\libbasic\ExternalAddress.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GitCvarType.$(O) GitCvarType.$(H): GitCvarType.st $(INCLUDE_TOP)\stx\libbasic\SharedPool.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
@@ -126,7 +127,6 @@
$(OUTDIR)GitIndexTimeStructure.$(O) GitIndexTimeStructure.$(H): GitIndexTimeStructure.st $(INCLUDE_TOP)\stx\libscm\git\GitStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\UninterpretedBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\ArrayedCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\SequenceableCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\Collection.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GitIndexerStatsStructure.$(O) GitIndexerStatsStructure.$(H): GitIndexerStatsStructure.st $(INCLUDE_TOP)\stx\libscm\git\GitStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\UninterpretedBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\ArrayedCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\SequenceableCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\Collection.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GitNoteDataStructure.$(O) GitNoteDataStructure.$(H): GitNoteDataStructure.st $(INCLUDE_TOP)\stx\libscm\git\GitStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\UninterpretedBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\ArrayedCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\SequenceableCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\Collection.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)GitObject.$(O) GitObject.$(H): GitObject.st $(INCLUDE_TOP)\stx\libscm\git\GitObjectType.$(H) $(INCLUDE_TOP)\stx\libscm\git\GitLibraryObject.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GitOdbBackendStructure.$(O) GitOdbBackendStructure.$(H): GitOdbBackendStructure.st $(INCLUDE_TOP)\stx\libscm\git\GitStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\UninterpretedBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\ArrayedCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\SequenceableCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\Collection.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GitOdbStreamStructure.$(O) GitOdbStreamStructure.$(H): GitOdbStreamStructure.st $(INCLUDE_TOP)\stx\libscm\git\GitStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\UninterpretedBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\ArrayedCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\SequenceableCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\Collection.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GitReference.$(O) GitReference.$(H): GitReference.st $(INCLUDE_TOP)\stx\libscm\git\GitLibraryObject.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
@@ -134,16 +134,19 @@
$(OUTDIR)GitRemoteHeadStructure.$(O) GitRemoteHeadStructure.$(H): GitRemoteHeadStructure.st $(INCLUDE_TOP)\stx\libscm\git\GitStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\UninterpretedBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\ArrayedCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\SequenceableCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\Collection.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GitRepository.$(O) GitRepository.$(H): GitRepository.st $(INCLUDE_TOP)\stx\libscm\git\GitObjectType.$(H) $(INCLUDE_TOP)\stx\libscm\git\GitStatusCodes.$(H) $(INCLUDE_TOP)\stx\libscm\git\GitLibraryObject.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GitRepositoryInitOptionsStructure.$(O) GitRepositoryInitOptionsStructure.$(H): GitRepositoryInitOptionsStructure.st $(INCLUDE_TOP)\stx\libscm\git\GitStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\UninterpretedBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\ArrayedCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\SequenceableCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\Collection.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GitRepositoryObject.$(O) GitRepositoryObject.$(H): GitRepositoryObject.st $(INCLUDE_TOP)\stx\libscm\git\GitLibraryObject.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GitSignature.$(O) GitSignature.$(H): GitSignature.st $(INCLUDE_TOP)\stx\libscm\git\GitLibraryObject.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GitSignatureStructure.$(O) GitSignatureStructure.$(H): GitSignatureStructure.st $(INCLUDE_TOP)\stx\libscm\git\GitStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\UninterpretedBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\ArrayedCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\SequenceableCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\Collection.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GitStatusOptionsStructure.$(O) GitStatusOptionsStructure.$(H): GitStatusOptionsStructure.st $(INCLUDE_TOP)\stx\libscm\git\GitStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\UninterpretedBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\ArrayedCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\SequenceableCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\Collection.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)GitStrarrayStructure.$(O) GitStrarrayStructure.$(H): GitStrarrayStructure.st $(INCLUDE_TOP)\stx\libscm\git\GitStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\UninterpretedBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\ArrayedCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\SequenceableCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\Collection.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GitStringArray.$(O) GitStringArray.$(H): GitStringArray.st $(INCLUDE_TOP)\stx\libscm\git\GitStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\UninterpretedBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\ArrayedCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\SequenceableCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\Collection.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GitTimeStructure.$(O) GitTimeStructure.$(H): GitTimeStructure.st $(INCLUDE_TOP)\stx\libscm\git\GitStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalStructure.$(H) $(INCLUDE_TOP)\stx\libbasic\ExternalBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\UninterpretedBytes.$(H) $(INCLUDE_TOP)\stx\libbasic\ArrayedCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\SequenceableCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\Collection.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)GitWorkingCopy.$(O) GitWorkingCopy.$(H): GitWorkingCopy.st $(INCLUDE_TOP)\stx\libscm\git\GitStatusCodes.$(H) $(INCLUDE_TOP)\stx\libscm\git\GitLibraryObject.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)GitWorkingCopyEntry.$(O) GitWorkingCopyEntry.$(H): GitWorkingCopyEntry.st $(INCLUDE_TOP)\stx\libscm\git\GitStatusCodes.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)GitCommit.$(O) GitCommit.$(H): GitCommit.st $(INCLUDE_TOP)\stx\libscm\git\GitObject.$(H) $(INCLUDE_TOP)\stx\libscm\git\GitLibraryObject.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)GitTag.$(O) GitTag.$(H): GitTag.st $(INCLUDE_TOP)\stx\libscm\git\GitObject.$(H) $(INCLUDE_TOP)\stx\libscm\git\GitLibraryObject.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)GitTree.$(O) GitTree.$(H): GitTree.st $(INCLUDE_TOP)\stx\libscm\git\GitObject.$(H) $(INCLUDE_TOP)\stx\libscm\git\GitLibraryObject.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GitObject.$(O) GitObject.$(H): GitObject.st $(INCLUDE_TOP)\stx\libscm\git\GitObjectType.$(H) $(INCLUDE_TOP)\stx\libscm\git\GitRepositoryObject.$(H) $(INCLUDE_TOP)\stx\libscm\git\GitLibraryObject.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GitRemote.$(O) GitRemote.$(H): GitRemote.st $(INCLUDE_TOP)\stx\libscm\git\GitObjectType.$(H) $(INCLUDE_TOP)\stx\libscm\git\GitRepositoryObject.$(H) $(INCLUDE_TOP)\stx\libscm\git\GitLibraryObject.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GitWorkingCopy.$(O) GitWorkingCopy.$(H): GitWorkingCopy.st $(INCLUDE_TOP)\stx\libscm\git\GitStatusCodes.$(H) $(INCLUDE_TOP)\stx\libscm\git\GitRepositoryObject.$(H) $(INCLUDE_TOP)\stx\libscm\git\GitLibraryObject.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GitCommit.$(O) GitCommit.$(H): GitCommit.st $(INCLUDE_TOP)\stx\libscm\git\GitObject.$(H) $(INCLUDE_TOP)\stx\libscm\git\GitRepositoryObject.$(H) $(INCLUDE_TOP)\stx\libscm\git\GitLibraryObject.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GitTag.$(O) GitTag.$(H): GitTag.st $(INCLUDE_TOP)\stx\libscm\git\GitObject.$(H) $(INCLUDE_TOP)\stx\libscm\git\GitRepositoryObject.$(H) $(INCLUDE_TOP)\stx\libscm\git\GitLibraryObject.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)GitTree.$(O) GitTree.$(H): GitTree.st $(INCLUDE_TOP)\stx\libscm\git\GitObject.$(H) $(INCLUDE_TOP)\stx\libscm\git\GitRepositoryObject.$(H) $(INCLUDE_TOP)\stx\libscm\git\GitLibraryObject.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)extensions.$(O): extensions.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
# ENDMAKEDEPEND --- do not remove this line
--- a/git/git.rc Sun Sep 30 14:31:09 2012 +0000
+++ b/git/git.rc Sun Sep 30 22:13:12 2012 +0000
@@ -25,7 +25,7 @@
VALUE "LegalCopyright", "Copyright Claus Gittinger 1988-2012\nCopyright eXept Software AG 1998-2012\0"
VALUE "ProductName", "Smalltalk/X\0"
VALUE "ProductVersion", "6.2.3.1\0"
- VALUE "ProductDate", "Sun, 30 Sep 2012 12:27:48 GMT\0"
+ VALUE "ProductDate", "Sun, 30 Sep 2012 22:14:17 GMT\0"
END
END
--- a/git/libInit.cc Sun Sep 30 14:31:09 2012 +0000
+++ b/git/libInit.cc Sun Sep 30 22:13:12 2012 +0000
@@ -31,6 +31,7 @@
_GitBlobHandle_Init(pass,__pRT__,snd);
_GitBranchType_Init(pass,__pRT__,snd);
_GitCheckoutStrategy_Init(pass,__pRT__,snd);
+_GitCommand_Init(pass,__pRT__,snd);
_GitCommitHandle_Init(pass,__pRT__,snd);
_GitConfigHandle_Init(pass,__pRT__,snd);
_GitCvarType_Init(pass,__pRT__,snd);
@@ -91,7 +92,6 @@
_GitIndexTimeStructure_Init(pass,__pRT__,snd);
_GitIndexerStatsStructure_Init(pass,__pRT__,snd);
_GitNoteDataStructure_Init(pass,__pRT__,snd);
-_GitObject_Init(pass,__pRT__,snd);
_GitOdbBackendStructure_Init(pass,__pRT__,snd);
_GitOdbStreamStructure_Init(pass,__pRT__,snd);
_GitReference_Init(pass,__pRT__,snd);
@@ -99,13 +99,16 @@
_GitRemoteHeadStructure_Init(pass,__pRT__,snd);
_GitRepository_Init(pass,__pRT__,snd);
_GitRepositoryInitOptionsStructure_Init(pass,__pRT__,snd);
+_GitRepositoryObject_Init(pass,__pRT__,snd);
_GitSignature_Init(pass,__pRT__,snd);
_GitSignatureStructure_Init(pass,__pRT__,snd);
_GitStatusOptionsStructure_Init(pass,__pRT__,snd);
-_GitStrarrayStructure_Init(pass,__pRT__,snd);
+_GitStringArray_Init(pass,__pRT__,snd);
_GitTimeStructure_Init(pass,__pRT__,snd);
+_GitWorkingCopyEntry_Init(pass,__pRT__,snd);
+_GitObject_Init(pass,__pRT__,snd);
+_GitRemote_Init(pass,__pRT__,snd);
_GitWorkingCopy_Init(pass,__pRT__,snd);
-_GitWorkingCopyEntry_Init(pass,__pRT__,snd);
_GitCommit_Init(pass,__pRT__,snd);
_GitTag_Init(pass,__pRT__,snd);
_GitTree_Init(pass,__pRT__,snd);
--- a/git/stx_libscm_git.st Sun Sep 30 14:31:09 2012 +0000
+++ b/git/stx_libscm_git.st Sun Sep 30 22:13:12 2012 +0000
@@ -27,8 +27,8 @@
exclude individual packages in the #excludedFromPrerequisites method."
^ #(
- #'stx:goodies/sunit' "TestCase - superclass of GitTests "
- #'stx:libbasic' "ExternalBytes - superclass of GitStrarrayStructure "
+ #'stx:goodies/sunit' "TestAsserter - superclass of GitTests "
+ #'stx:libbasic' "Error - superclass of GitError "
)
! !
@@ -43,6 +43,7 @@
^ #(
"<className> or (<className> attributes...) in load order"
GitLibraryObject
+ GitRepositoryObject
GitStatusCodes
GitErrorKlass
GitStructure
@@ -101,7 +102,6 @@
GitSignatureStructure
GitStatusOptionsStructure
GitStatusShowType
- GitStrarrayStructure
GitSubmoduleHandle
GitSubmoduleIgnoreType
GitSubmoduleStatusType
@@ -126,6 +126,9 @@
GitAuthorQuery
GitCommitterQuery
GitReference
+ GitCommand
+ GitStringArray
+ GitRemote
)
!