You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
76 lines
1.7 KiB
76 lines
1.7 KiB
# Set up hub wrapper for git, if it is available; https://github.com/github/hub |
|
if (( $+commands[hub] )); then |
|
alias git=hub |
|
fi |
|
|
|
# Functions ################################################################# |
|
|
|
# Based on https://github.com/dbb/githome/blob/master/.config/zsh/functions |
|
|
|
# empty_gh <NAME_OF_REPO> |
|
# |
|
# Use this when creating a new repo from scratch. |
|
# Creates a new repo with a blank README.md in it and pushes it up to GitHub. |
|
empty_gh() { # [NAME_OF_REPO] |
|
emulate -L zsh |
|
local repo=$1 |
|
|
|
mkdir "$repo" |
|
touch "$repo/README.md" |
|
new_gh "$repo" |
|
} |
|
|
|
# new_gh [DIRECTORY] |
|
# |
|
# Use this when you have a directory that is not yet set up for git. |
|
# This function will add all non-hidden files to git. |
|
new_gh() { # [DIRECTORY] |
|
emulate -L zsh |
|
local repo="$1" |
|
cd "$repo" \ |
|
|| return |
|
|
|
git init \ |
|
|| return |
|
# add all non-dot files |
|
print '.*'"\n"'*~' >> .gitignore |
|
git add [^.]* \ |
|
|| return |
|
git add -f .gitignore \ |
|
|| return |
|
git commit -m 'Initial commit.' \ |
|
|| return |
|
hub create \ |
|
|| return |
|
git push -u origin master \ |
|
|| return |
|
} |
|
|
|
# exist_gh [DIRECTORY] |
|
# |
|
# Use this when you have a git repo that's ready to go and you want to add it |
|
# to your GitHub. |
|
exist_gh() { # [DIRECTORY] |
|
emulate -L zsh |
|
local repo=$1 |
|
cd "$repo" |
|
|
|
hub create \ |
|
|| return |
|
git push -u origin master |
|
} |
|
|
|
# git.io "GitHub URL" |
|
# |
|
# Shorten GitHub url, example: |
|
# https://github.com/nvogel/dotzsh > https://git.io/8nU25w |
|
# source: https://github.com/nvogel/dotzsh |
|
# documentation: https://github.com/blog/985-git-io-github-url-shortener |
|
# |
|
git.io() { |
|
emulate -L zsh |
|
curl -i -s https://git.io -F "url=$1" | grep "Location" | cut -f 2 -d " " |
|
} |
|
|
|
# End Functions ############################################################# |
|
|
|
|