GIT的基本指令
2018-12-24 本文已影响4人
一人一心
1. git init
在本地新建一个repo,进入一个项目目录,执行git init,会初始化一个repo,并在当前folder下创建一个.git folder。
2. git config
git config --list #查看配置信息
git config --global user.name name #用户名
git config --global user.email email #用户邮箱
3. git clone url [alias]
获取一个url对应的远程Git repo, 创建一个local copy。
4. git status
查看当前代码库的状态。
5. git add
git add [path] #会把对应目录或文件,添加到stage状态
git add . #会把当前所有的untrack files和changed but not updated添加到stage状态
6. git commit
git commit -m "message" #提交修改,添加注释
7. git diff
git diff #默认查看工作区和暂存区的区别
git diff --cache #是工作区(work dict)和暂存区(stage)的比较
8. git checkout filename
git checkout filename #从索引中恢复
git checkout branchname #切换分支
git checkout -b branchname #切换到新建分支
9. git branch
9.1 创建分支
git branch newbranch #创建新分支,创建分支但依然停留在当前分支
9.2 删除分支
git branch -d branchname #删除本地分支
git branch -D branchname #新分支还没有合入当前分支,所以要用-D参数才能删掉
git push origin --delete test #删除远程test分支
git push origin :test #删除远程test分支
9.3 查看分支
git branch #列出当前分支清单
git branch -a #列出所有分支
git branch -r #列出所有远程分支
git branch --merged #查看哪些分支已经合并入当前分支
10. git pull
git pull
取回远程主机某个分支的更新,再与本地的指定分支合并。
git pull
等价于git fetch + git merge
。
git pull <远程主机名> <远程分支名>:<本地分支名>
11. git reset
git reset --soft #将HEAD引用指向给定提交。索引和工作目录的内容是不变的。
git reset --hard #HEAD引用指向给定提交,索引内容和工作目录内容都会变给定提交时的状态。也就是在给定提交后所修改的内容都会丢失。
12. git remote
git remote #查看关联的远程仓库的名称
git remote -v #查看关联的远程仓库的详细信息
git remote remove <name> #删除远程仓库的关联
git remote add <主机名> <url> #添加远程仓库的关联
git remote set-url origin <newurl> #使用 git remote set-url 命令,更新远程仓库的 url
13. git stash
git stash #暂存当前修改内容
git stash pop #弹出修改内容
14. oh my zsh
Oh My Zsh is a delightful, open source, community-driven framework for managing your Zsh configuration. It comes bundled with a ton of helpful functions, helpers, plugins, themes, and a few things that make you shout...
sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)" #via curl
sh -c "$(wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)" #via wget