forked from toolshed/abra
bubble up errors on branch switch
This commit is contained in:
parent
9510c04aeb
commit
8d076a308a
@ -15,7 +15,9 @@ func Init(repoPath string, commit bool, gitName, gitEmail string) error {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("git init: %s", err)
|
return fmt.Errorf("git init: %s", err)
|
||||||
}
|
}
|
||||||
MasterToMain(repo)
|
if err = SwitchToMain(repo); err != nil {
|
||||||
|
return fmt.Errorf("git branch rename: %s", err)
|
||||||
|
}
|
||||||
log.Debugf("initialised new git repo in %s", repoPath)
|
log.Debugf("initialised new git repo in %s", repoPath)
|
||||||
|
|
||||||
if commit {
|
if commit {
|
||||||
@ -46,20 +48,21 @@ func Init(repoPath string, commit bool, gitName, gitEmail string) error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func MasterToMain(repo *git.Repository) {
|
func SwitchToMain(repo *git.Repository) error {
|
||||||
// Create and set the 'main' branch as default
|
// Create and set the 'main' branch as default
|
||||||
ref := plumbing.NewSymbolicReference(plumbing.HEAD, plumbing.ReferenceName("refs/heads/main"))
|
ref := plumbing.NewSymbolicReference(plumbing.HEAD, plumbing.ReferenceName("refs/heads/main"))
|
||||||
if err := repo.Storer.SetReference(ref); err != nil {
|
if err := repo.Storer.SetReference(ref); err != nil {
|
||||||
log.Fatalf("Failed to set 'main' as default branch: %v", err)
|
return fmt.Errorf("set reference: %s", err)
|
||||||
}
|
}
|
||||||
// Update the repository configuration
|
// Update the repository configuration
|
||||||
cfg, err := repo.Config()
|
cfg, err := repo.Config()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatalf("Failed to get repository config: %v", err)
|
return fmt.Errorf("repo config: %s", err)
|
||||||
}
|
}
|
||||||
cfg.Init.DefaultBranch = "main"
|
cfg.Init.DefaultBranch = "main"
|
||||||
if err := repo.SetConfig(cfg); err != nil {
|
if err := repo.SetConfig(cfg); err != nil {
|
||||||
log.Fatalf("Failed to update repository config: %v", err)
|
return fmt.Errorf("repo set config: %s", err)
|
||||||
}
|
}
|
||||||
fmt.Println("Set 'main' as the default branch.")
|
log.Debug("set 'main' as the default branch.")
|
||||||
|
return nil
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user