• 拉取
git clone '项目地址'  clone项目到本地
git clone -o eveus 设置远程主机名,默认是origin
git fetch 远程主机名 远程分支名:tmp(本地分支名)    拉取远程最新代码到tmp分支 tem为新创建的分支
git pull相当于 git fetch和git merge
git pull <远程主机名> <远程分支名>:<本地分支名>
  • 分支
git checkout -b feature/user  创建并切换分支
git branch 列出本地所有分支并显示当前分支
git branch -a 列出所有分支列表(本地和远程)
git checkout dev 切换分支
git branch -d feature/user  删除本地分支
git branch -D feature/user  强行删除分支
  • 合并
git merge dev  合并dev分支到当前分支 Fast forward方式合并
git merge --no-ff dev  普通方式合并,显示分支历史
  • 查询提交信息
git reflog  查询输入的命令

git log  查询全部提交记录信息
git log -1 查询最后一次提交的信息
git log -p -1 显示提交的文件差异
git log --stat 仅显示简要的增改行数统计
git log --pretty=oneline  一行显示提交信息
git log --graph  显示分支图
  • 查询修改信息
git status 查看修改的文件
git diff   按q退出
  • 提交
git add -A 暂存全部
git add -u 暂存已跟踪修改的文件
git add -f App.class  强制添加,包括ignore的文件
git commit -m '提交信息'  提交到本地仓库
git push -u origin master  推送全部提交到远程库
  • 重置
git checkout -- readme.txt 撤销修改
git checkout . 放弃所有修改
 
git reset --hard HEAD^ 提交后回退到上个版本
git reset --hard 36281 重置到指定号
 git reset --hard 重置当前
  • 删除
git rm readme.txt 删除
  • 远程
git remote 查看本地关联的远程分支
git remote -v  显示更多信息
git branch --set-upstream dev origin/dev 设置关联远程分支 指定dev分支追踪origin/dev
git remote add origin git@server-name:path/repo-name.git 关联远程库
git remote rename 原主机名  新主机名
 
  • 储存
git stash  将当前项目储存
git stash list 
git stash save '备份1' 自定义名称存储
git stash apply  恢复  只恢复不删除
git stash drop 删除
git stash pop 恢复并删除
 
  • 标签
git tag v1.0 
git tag 查看所有标签
git tag v0.9 6224937  对指定号打标签
git show <tagname>  查看标签信息
git tag -a v0.1 -m "version 0.1 released" 3628164   打标签时添加说明 -a标签名  -m说明
$ git tag -s v0.2 -m "signed version 0.2 released" fec145a    用私钥签名一个标签-s
git tag -d v0.1   删除

git push -u origin master 设置推送的远程分支
git push origin v1.0   推送标签到远程
git push origin --tags  一次性推送全部标签
git push origin :refs/tags/v0.9  删除远程标签,执行改命令前先删除本地标签
  • 自定义git
git config --global color.ui true  设置git全局属性
git check-ignore -v App.class  检查.gitignore与该文件冲突的地方
git config --global alias.st status   全局设置别名(不加--global对当前仓库起作用)
  • 设置https用户名密码
git config --global credential.helper cache  设置记住密码(默认15分钟)
git config credential.helper 'cache --timeout=3600' 自定义时间
git config --global credential.helper store 长期存储密码
git remote add origin http://yourname:password@github地址 增加远程地址的时间带上密码