Leave VCS files when using clean after

This commit is contained in:
morganamilo 2018-09-27 14:10:36 +01:00
parent 9ac4ab6c25
commit bf0ab3216a
No known key found for this signature in database
GPG key ID: 6FE9E7996B0B082E
2 changed files with 35 additions and 11 deletions

View file

@ -187,9 +187,8 @@ func cleanUntracked() error {
}
dir := filepath.Join(config.BuildDir, file.Name())
if shouldUseGit(dir) {
if err = show(passToGit(dir, "clean", "-fx")); err != nil {
if err := show(passToGit(dir, "clean", "-fx")); err != nil {
return err
}
}
@ -197,3 +196,36 @@ func cleanUntracked() error {
return nil
}
func cleanAfter(bases []Base) {
fmt.Println("removing Untracked AUR files from cache...")
for i, base := range bases {
dir := filepath.Join(config.BuildDir, base.Pkgbase())
if shouldUseGit(dir) {
fmt.Printf(bold(cyan("::")+" Cleaning (%d/%d): %s\n"), i+1, len(bases), cyan(dir))
_, stderr, err := capture(passToGit(dir, "reset", "--hard", "HEAD"))
if err != nil {
fmt.Printf("error resetting %s: %s", base.String(), stderr)
}
show(passToGit(dir, "clean", "-fx"))
} else {
fmt.Printf(bold(cyan("::")+" Deleting (%d/%d): %s\n"), i+1, len(bases), cyan(dir))
if err := os.RemoveAll(dir); err != nil {
fmt.Println(err)
}
}
}
}
func cleanBuilds(bases []Base) {
for i, base := range bases {
dir := filepath.Join(config.BuildDir, base.Pkgbase())
fmt.Printf(bold(cyan("::")+" Deleting (%d/%d): %s\n"), i+1, len(bases), cyan(dir))
if err := os.RemoveAll(dir); err != nil {
fmt.Println(err)
}
}
}

View file

@ -341,7 +341,7 @@ func install(parser *arguments) error {
}
if config.CleanAfter {
cleanBuilds(do.Aur)
cleanAfter(do.Aur)
}
return nil
@ -680,14 +680,6 @@ func editDiffNumberMenu(bases []Base, installed stringSet, diff bool) ([]Base, e
return toEdit, nil
}
func cleanBuilds(bases []Base) {
for i, base := range bases {
dir := filepath.Join(config.BuildDir, base.Pkgbase())
fmt.Printf(bold(cyan("::")+" Deleting (%d/%d): %s\n"), i+1, len(bases), cyan(dir))
os.RemoveAll(dir)
}
}
func showPkgbuildDiffs(bases []Base, cloned stringSet) error {
for _, base := range bases {
pkg := base.Pkgbase()