Git命令

  1. 安装Git
      1. $ git config --global user.name "Yoour Name"
        $ git config --global user.email "email@example.com"
    1. 注意git config命令的--global参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。
  2. 创建版本库
      1. $ mkdir learngit
        $ cd learngit
        $ pwd
        /Users/michael/learngit
    1. 通过git init命令把这个目录编程Git可以管理的仓库:
      1. $git init
    2. 用命令git add告诉Git,把文件添加到仓库:
      1. $ git add readme.txt
    3. 用命令git commit告诉Git,把文件提交到仓库:
      1. $ git commit -m "wrote a readme file"
  3. 版本回退
    1. git 仓库状态:
      1. $ git status
    2. 查看修改详情:
      1. $ git diff
    3. 查看日志:
      1. $ git log
        $ git log --pretty=oneline
    4. 回退到上一个版本号:
      1. $ git reset --hard HEAD^
        $ cat readme.txt
    5. 指定回到某个版本:
      1. $ git reset --hard commit id
        $ cat readme.txt
      1. $ git reflog
  4. 管理修改
    1.   查看工作区和版本库里面最新版本的区别:
      1. $ git diff HEAD -- readme.txt
  5. 撤销修改
    1. 丢弃工作区的修改:
      1. $ git checkout -- readme.txt
    2. 回退版本\把暂存区的修改回退到工作区,HEAD(最新版本):
      1. $ git reset HEAD readme.txt
  6. 删除文件    
    1. 从版本库中删除文件:
      1. $ git rm test.txt
  7. 添加远程库(github)
    1. 关联远程仓库:
      1. $ git remote add origin git@github.com:AnswerLiu/learngit.git
    2. 把本地内容推送到远程仓库:
      1. $ git push -u origin master
      第一次加“-u”参数,是为了把本地master分支和远程master分支关联起来,以后的推送或拉取可以不需要。
      1. $ git push origin master
  8. 远程库克隆(github)
      1. $ git clone git@github.com:AnswerLiu/test.git
        $ cd test
        $ ls
        README.md
  9. 创建与合并分支
    1. 查看分支:
      1. $ git branch
    2. 创建分支:
      1. $ git branch <name>
    3. 切换分支:
      1. $ git checkout <name>
    4. 创建+切换分支:
      1. $ git checkout -b <name>
    5. 合并某分支到当前分支:
      1. $ git merge <name>
    6. 删除分支:
      1. $ git branch -d <name>
  10. 解决冲突(手动解决)
    1. 查看分支合并图:
      1. $ git log --graph
        $ git log --graph --pretty=oneline --abbrev-commit
  11. 分支管理策略    
    1. --no-ff合并分支:
      1. $ git merge --no-ff -m "xxxx" <name>
        $ git log --graph --pretty=oneline -abbrev-commit
  12. Bug分支
    1. 暂时“储藏”工作现场:
      1. $ git stash
    2. 查看被“储藏”的工作现场:
      1. $ git stash list
    3. 恢复被“储藏”的工作现场:
      1. $ git stash apply
        $ git stash drop
      推荐使用:
      1. $ git stash pop
    4. 恢复指定的stash:
      1. $ git stash apply stash@{0}
  13. Feature分支
    1. 强行删除分支:
      1. $ git branch -D <name>
  14. 多人协作
    1. 查看远程库信息:
      1. $ git remote
    2. 显示详细信息:
      1. $ git remote -v
    3. 本地创建远程分支:
      1. $ git checkout -b dev origin/dev
    4. 抓取最新分支:
      1. $ git pull
    5. git pull失败,将本地分支和远程分支创建联系:
      1. $ git branch --set-upstream branch-name origin/branch-name
  15. 创建标签
    1. 创建新的标签:
      1. $ git tag <name>
    2. 查看所有的标签:
      1. $ git tag
    3. 将之前没有标签的commit打上标签:
      1. $ git tag <name> commit id
    4. 查看标签的详细内容:
      1. $ git show <tagname>
    5. 创建带有说明的标签,用-a指定标签名,-m指定说明文字:
      1. $ git tag -a <tagname> -m "说明文字" commit id
    6. -s用私钥签名一个标签:
      1. $ git tag -s <tagname> -m "说明文字" commit id
  16. 操作标签
    1. 删除标签:
      1. $ git tag -d <tagname>
    2. 推送标签到远程:
      1. $ git push origin <tagname>
    3. 全部推送标签到远程:
      1. $ git push origin --tags
    4. 删除远程标签:
      1. 先从本地删除
        $ git tag -d <tagname>
        再从远程删除
        $ git push origin :refs/tags/<tagname>
  17. git显示颜色:
    1. $ git config --global color.ui true
  18. 忽略特殊文件
    1. 在Git根目录下创建.gitignore文件,然后把.gitignore也提交到Git
    2. 强制提交被忽略的文件:
      1. $ git add -f <name>
    3. 检查.gitignore规则:
      1. $ git check-ignore -v <name>
  19. 配置别名
    1. 配置别名:
      1. $ git config --global alias.<别名> <name>
    2. 常用别名:
      1. $ git config --global alias.st status
        $ git config --global alias.co checkout
        $ git config --global alias.ci commit
        $ git config --global alias.br branch
        $ git config --global alias.unstage 'reset HEAD'
        $ git config --global alias.last 'log -1'
        $ git config --global alias.lg 'log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit'
    3. 配置文件目录:
      1. 每个仓库的Git配置文件都在.git/config文件中
      2. 当前用户的配置文件在用户主目录下的一个隐藏文件/gitconfig
       
  20. ……
posted @ 2017-02-04 09:58  青丝锁刘peng  阅读(331)  评论(0编辑  收藏  举报