mirror of
https://github.com/Jguer/yay
synced 2024-10-01 13:53:32 +00:00
Leave VCS files when using clean after
This commit is contained in:
parent
9ac4ab6c25
commit
bf0ab3216a
36
clean.go
36
clean.go
|
@ -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)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
10
install.go
10
install.go
|
@ -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()
|
||||
|
|
Loading…
Reference in a new issue