emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] [emacs] 01/01: Backport 2014-06-30 admin/update_autogen ch


From: Glenn Morris
Subject: [Emacs-diffs] [emacs] 01/01: Backport 2014-06-30 admin/update_autogen change
Date: Sat, 15 Nov 2014 23:17:09 +0000

gm pushed a commit to branch emacs-24
in repository emacs.

commit 899a5a9882ddb6106dbabf2012c957ea1340ac2a
Author: Glenn Morris <address@hidden>
Date:   Sat Nov 15 18:16:28 2014 -0500

    Backport 2014-06-30 admin/update_autogen change
    
    * admin/update_autogen: Auto-detect VCS in use.
    (vcs): New variable.
    (status, commit, main): Handle git.
---
 admin/ChangeLog      |    6 ++++++
 admin/update_autogen |   28 ++++++++++++++++++++++------
 2 files changed, 28 insertions(+), 6 deletions(-)

diff --git a/admin/ChangeLog b/admin/ChangeLog
index d87cd6b..72ce74b 100644
--- a/admin/ChangeLog
+++ b/admin/ChangeLog
@@ -1,3 +1,9 @@
+2014-11-15  Glenn Morris  <address@hidden>
+
+       * update_autogen: Auto-detect VCS in use.
+       (vcs): New variable.
+       (status, commit, main): Handle git.
+
 2014-11-11  Eric S. Raymond  <address@hidden>
 
        * make-tarball.txt, update-copyright, admin/notes/bugtracker,
diff --git a/admin/update_autogen b/admin/update_autogen
index b951196..d9d34fa 100755
--- a/admin/update_autogen
+++ b/admin/update_autogen
@@ -47,6 +47,14 @@ cd $PD
 cd ../
 [ -d admin ] || die "Could not locate admin directory"
 
+if [ -d .bzr ]; then
+    vcs=bzr
+elif [ -d .git ]; then
+    vcs=git
+else
+    die "Cannot determine vcs"
+fi
+
 
 usage ()
 {
@@ -143,7 +151,10 @@ OPTIND=1
 ## Run status on inputs, list modified files on stdout.
 status ()
 {
-    bzr status -S "$@" >| $tempfile || die "bzr status error for $@"
+    local statflag="-S"
+    [ "$vcs" = "git" ] && statflag="-s"
+
+    $vcs status $statflag "$@" >| $tempfile || die "$vcs status error for $@"
 
     local stat file modified
 
@@ -217,8 +228,11 @@ commit ()
 
     echo "Committing..."
 
-    ## bzr status output is always relative to top-level, not PWD.
-    bzr commit -m "Auto-commit of $type files." "$@" || return $?
+    $vcs commit -m "Auto-commit of $type files." "$@" || return $?
+
+    [ "$vcs" = "git" ] && {
+        $vcs push || return $?
+    }
 
     echo "Committed files: $@"
 }                               # function commit
@@ -257,7 +271,7 @@ EOF
                 *-xtra.texi|*efaq-w32.texi) continue ;;
             esac
 
-            dircat=`sed -n -e 's/@value{emacsname}/Emacs/' -e 
's/address@hidden //p' $file`
+            dircat=$(sed -n -e 's/@value{emacsname}/Emacs/' -e 
's/address@hidden //p' $file)
 
             ## TODO warn about unknown topics (check-info in top-level
             ## Makefile does this).
@@ -291,7 +305,8 @@ EOF
 
     modified=$(status $basegen) || die
 
-    cd $oldpwd
+    ## bzr status output is always relative to top-level, not PWD.
+    [ "$vcs" = "bzr" ] && cd $oldpwd
 
     commit "generated" $modified || die "commit error"
 
@@ -364,7 +379,8 @@ echo "Checking status of loaddef files..."
 modified=$(status $genfiles ${ldefs_out#lisp/}) || die
 
 
-cd ../
+## bzr status output is always relative to top-level, not PWD.
+[ "$vcs" = "bzr" ] && cd ../
 
 
 commit "loaddefs" $modified || die "commit error"



reply via email to

[Prev in Thread] Current Thread [Next in Thread]