WIP: tea clone: set upstream remote for mirrors #473
|
@ -57,16 +57,24 @@ func RepoClone(
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
// set up upstream remote for forks
|
// set up upstream remote for forks and mirrors
|
||||||
|
var upstreamURL string
|
||||||
|
var upstreamBranch string
|
||||||
if repoMeta.Fork && repoMeta.Parent != nil {
|
if repoMeta.Fork && repoMeta.Parent != nil {
|
||||||
upstreamURL, err := cloneURL(repoMeta.Parent, login)
|
upstreamURLRaw, err := cloneURL(repoMeta.Parent, login)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
upstreamBranch := repoMeta.Parent.DefaultBranch
|
upstreamURL = upstreamURLRaw.String()
|
||||||
|
upstreamBranch = repoMeta.Parent.DefaultBranch
|
||||||
|
} else if repoMeta.Mirror && len(repoMeta.OriginalURL) != 0 {
|
||||||
|
upstreamURL = repoMeta.OriginalURL
|
||||||
|
upstreamBranch = repoMeta.DefaultBranch
|
||||||
|
}
|
||||||
|
if len(upstreamURL) != 0 {
|
||||||
repo.CreateRemote(&git_config.RemoteConfig{
|
repo.CreateRemote(&git_config.RemoteConfig{
|
||||||
Name: "upstream",
|
Name: "upstream",
|
||||||
URLs: []string{upstreamURL.String()},
|
URLs: []string{upstreamURL},
|
||||||
})
|
})
|
||||||
repoConf, err := repo.Config()
|
repoConf, err := repo.Config()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user