Skip to content

Commit 6754025

Browse files
committed
fix:fix repository pull
1 parent ab14adf commit 6754025

File tree

1 file changed

+19
-12
lines changed

1 file changed

+19
-12
lines changed

lib/GoGitRepository.go

+19-12
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ func (t ProggressWrapper) Write(p []byte) (n int, err error) {
2525
return len(p), nil
2626
}
2727

28-
func GetAuthMethod(r GitRepository) (transport.AuthMethod, error) {
28+
func getAuthMethod(r GitRepository) (transport.AuthMethod, error) {
2929
if r.Repository.SSHKey.Type == db.AccessKeySSH {
3030
var sshKeyBuff = r.Repository.SSHKey.SshKey.PrivateKey
3131

@@ -50,7 +50,7 @@ func GetAuthMethod(r GitRepository) (transport.AuthMethod, error) {
5050
}
5151
}
5252

53-
func OpenRepository(r GitRepository, targetDir GitRepositoryDirType) (*git.Repository, error) {
53+
func openRepository(r GitRepository, targetDir GitRepositoryDirType) (*git.Repository, error) {
5454

5555
var dir string
5656

@@ -69,7 +69,7 @@ func OpenRepository(r GitRepository, targetDir GitRepositoryDirType) (*git.Repos
6969
func (c GoGitClient) Clone(r GitRepository) error {
7070
r.Logger.Log("Cloning Repository " + r.Repository.GitURL)
7171

72-
authMethod, authErr := GetAuthMethod(r)
72+
authMethod, authErr := getAuthMethod(r)
7373

7474
if authErr != nil {
7575
return authErr
@@ -94,7 +94,7 @@ func (c GoGitClient) Clone(r GitRepository) error {
9494
func (c GoGitClient) Pull(r GitRepository) error {
9595
r.Logger.Log("Updating Repository " + r.Repository.GitURL)
9696

97-
rep, err := OpenRepository(r, GitRepositoryRepoDir)
97+
rep, err := openRepository(r, GitRepositoryRepoDir)
9898
if err != nil {
9999
return err
100100
}
@@ -104,9 +104,14 @@ func (c GoGitClient) Pull(r GitRepository) error {
104104
return err
105105
}
106106

107+
authMethod, authErr := getAuthMethod(r)
108+
if authErr != nil {
109+
return authErr
110+
}
111+
107112
// Pull the latest changes from the origin remote and merge into the current branch
108-
err = wt.Pull(&git.PullOptions{RemoteName: "origin"})
109-
if err != nil {
113+
err = wt.Pull(&git.PullOptions{RemoteName: "origin", Auth: authMethod})
114+
if err != nil && err != git.NoErrAlreadyUpToDate {
110115
r.Logger.Log("Unable to pull latest changes")
111116
return err
112117
}
@@ -117,7 +122,7 @@ func (c GoGitClient) Pull(r GitRepository) error {
117122
func (c GoGitClient) Checkout(r GitRepository, target string) error {
118123
r.Logger.Log("Checkout repository to " + target)
119124

120-
rep, err := OpenRepository(r, GitRepositoryRepoDir)
125+
rep, err := openRepository(r, GitRepositoryRepoDir)
121126
if err != nil {
122127
return err
123128
}
@@ -137,12 +142,12 @@ func (c GoGitClient) Checkout(r GitRepository, target string) error {
137142

138143
func (c GoGitClient) CanBePulled(r GitRepository) bool {
139144

140-
rep, err := OpenRepository(r, GitRepositoryRepoDir)
145+
rep, err := openRepository(r, GitRepositoryRepoDir)
141146
if err != nil {
142147
return false
143148
}
144149

145-
authMethod, err := GetAuthMethod(r)
150+
authMethod, err := getAuthMethod(r)
146151
if err != nil {
147152
return false
148153
}
@@ -182,7 +187,7 @@ func (c GoGitClient) CanBePulled(r GitRepository) bool {
182187
func (c GoGitClient) GetLastCommitMessage(r GitRepository) (msg string, err error) {
183188
r.Logger.Log("Get current commit message")
184189

185-
rep, err := OpenRepository(r, GitRepositoryRepoDir)
190+
rep, err := openRepository(r, GitRepositoryRepoDir)
186191
if err != nil {
187192
return
188193
}
@@ -201,13 +206,15 @@ func (c GoGitClient) GetLastCommitMessage(r GitRepository) (msg string, err erro
201206
msg = msg[0:100]
202207
}
203208

209+
r.Logger.Log("Message: " + msg)
210+
204211
return
205212
}
206213

207214
func (c GoGitClient) GetLastCommitHash(r GitRepository) (hash string, err error) {
208215
r.Logger.Log("Get current commit hash")
209216

210-
rep, err := OpenRepository(r, GitRepositoryRepoDir)
217+
rep, err := openRepository(r, GitRepositoryRepoDir)
211218
if err != nil {
212219
return
213220
}
@@ -227,7 +234,7 @@ func (c GoGitClient) GetLastRemoteCommitHash(r GitRepository) (hash string, err
227234
URLs: []string{r.Repository.GitURL},
228235
})
229236

230-
auth, err := GetAuthMethod(r)
237+
auth, err := getAuthMethod(r)
231238
if err != nil {
232239
return
233240
}

0 commit comments

Comments
 (0)