#! /bin/zsh # # this file: # https://dataswamp.org/~incal/conf/.zsh/git # # unrelated git: # https://dataswamp.org/~incal/conf/.zsh/git-more # # git config: # ~/.gitconfig # git checkout -b devel # git push -u origin devel # 1st time # git push # git checkout master # git merge develop # git push git-init-dir () { local name=$1 local git_dir=~/git local dir=${git_dir}/${name} mkdir -p $dir rm -f -r ${dir} git init ${dir} cd ${dir} \cp -r -f ~/public_html/elpa/${name}/* . rm **/*.elc git add -A . local srv=dataswamp.org local repo=~/public_html/${name}.git git commit -m "Initial commit" git remote add origin ${USER}@${srv}:${repo} git push --set-upstream origin master cd - } git-init-file () { local name=$1 local srv=dataswamp.org local repo=~/public_html/${name}.git local git_dir=~/git local dir=${git_dir}/${name} local elisp_file=${name}.el rm -f -r ${dir} git init ${dir} cd ${dir} \cp -f ~/public_html/elpa/${elisp_file} . git add ${elisp_file} git commit -m "Initial commit" git remote add origin ${USER}@${srv}:${repo} git push --set-upstream origin master cd - } git-update-dir () { local name=$1 local dir=~/public_html/elpa/${name} local git_dir=~/git/${name} mkdir -p $git_dir \cp -r -f ${dir}/* ${git_dir} cd $git_dir rm **/*.elc git commit -a -m "$(date)" git push -q cd - } git-update-file () { local name=$1 local filename=${name}.el local file=~/public_html/elpa/${filename} local git_dir=~/git/${name} mkdir -p $git_dir \cp -f $file $git_dir cd $git_dir git diff -q --exit-code if [[ $? == 1 ]]; then git commit -a -m "$(date)" git push -q fi cd - } git-update-all () { git-update-dir bad git-update-file wrap-search } alias gupa=git-update-all git-clone () { local name=$1 local repo=https://dataswamp.org/~incal/${name}.git cd ~/src git clone $repo } git-div () { local name=$1 local elpa=https://git.sv.gnu.org/git/emacs/elpa.git git fetch $elpa externals/${name} git merge FETCH_HEAD --allow-unrelated-histories }