zoukankan      html  css  js  c++  java
  • Git 命令

    功能命令解释
     设置  git config --global user.name "Your Name"  自报家门:你的名字
     git config --global user.name "Your Email"  自报家门:你的邮箱

     初始化 git 仓库

     git init  将当前目录变成Git可以管理的仓库
     添加文件到 git 仓库  git add file1.txt  将 file1.txt 提交到暂存区
     git add file2.txt file3.txt  将 file2.txt 以及 file3.txt 同时提交到暂存区
     git commit -m "add 3 files"  将暂存区的文件提交到仓库内,-m 后跟的是提交的信息,
     建议写的明显易懂,最好是跟文件修改内容相关
     查看仓库状态  git status

     查看仓库当前的状态:

     Changes not staged for commit  ## 发生了改变但是没有提交到仓库内(还没有执行 git add)

     Changes to be committed  ## 将要提交修改(已经执行了 git add)

     nothing to commit,working tree clean  ## 已执行 git commit ,当前没有需要提交的修改

     Untracked files  ## 新添加了文件,但还未 add

     git diff  查看 difference,查看本地的文件与 master 版本的差异
     显示提交日志   git log   显示从最近到最远的提交日志
     git log --pretty=oneline  显示从最近到最远的提交日志的简化信息
     git reflog  记录每一次 commit 和 reset 命令
     版本控制    git reset --hard HEAD^  将当前版本回退至上一版本
     git reset --hard HEAD~n  将当前版本回退至第 n 个版本
     git reset --hard commit_id  将当前版本指向 commit_id 版本号的版本
     撤销修改  git checkout -- file1.txt  将 file1.txt 文件丢弃工作区的修改(file1.txt 还没放进暂存区)
     git reset --hard HEAD && git checkout -- file1.txt  将 file1.txt 文件丢弃工作区的修改(file1.txt 已经放进暂存区)
     删除文件  git rm test.txt && git commit -m 'delete test'  将版本库内的 test.txt 删除(其实也是一次修改)
     git checkout -- test.txt  本地的 test.txt 误删除了,但是版本库内还没有删除,用这个可还原
     创建SSH Key  ssh-keygen -t rsa -C "youremil.com"  生成密钥对,将 id_rsa.pub 文件内的内容粘贴到 github 的 SSH key 内,添加了才能往 github 推送
     添加远程库  git remote add origin git@github.com:ganziwen/learngit.git  本地关联远程仓库,添加后,远程库的名字就是 origin 
     git push -u origin master  把本地库的所有内容推送到远程库(github)上,执行一次之后,以后就不用 -u 参数了
     git push origin master  本地作了提交,使用该命令将本地的 master 分支的最新修改推送至 github
     从远程库克隆  git clone git@github.com:ganziwen/helloworld.git  将 github 仓库的 helloworld 克隆到本地
     创建分支  git branch dev  创建一 dev 新分支
     切换分支  git checkout dev  切换到 dev 分支
     创建&切换分支  git checkout -b dev  创建一个 dev 分支,并且切换到 dev 分支
     查看分支  git branch  查看当前所有分支,所指向的分支用 * 标注
     合并分支  git merge dev  将 dev 分支合并到当前分支。Fast-forward 代表快进模式合并
     删除分支  git branch -d dev  将 dev 分支删除(合并完了不用就可以删除)
     查看分支合并图  git log --graph  查看 merge 的合并图
     git log --graph --pretty=oneline --abbrev-commit  简化分支图信息,过滤不必要的信息
     合并分支  git merge --no-ff -m 'message' dev  合并分支时,加上 --no-ff 参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并
     bug 分支管理  git stash  把当前工作现场“储藏”起来,等以后恢复现场后继续工作
     git stash list  查看工作现场的保存
     git stash pop  恢复的同时把stash内容也删了
     git stash apply && git stash drop  恢复 && 删除
     删除分支  git branch -D dev  对于还未 merge 的版本进行删除,用于删除新功能开发,不合并,需要删除的问题
     查看远程库信息  git remote  查看对应的远程库是哪个库
     推送分支  git push origin dev   将本地的 dev 分支 push 到 origin 分支
     抓取分支  git branch --set-upstream-to=origin/dev dev  设置 dev 和 origin/dev 的链接
     git pull   将远程的 origin 分支抓取到本地
     创建标签
     标签和 commit 挂钩
     git tag v1.0  将当前分支打标签,名字为 v1.0,默认标签是打在最新提交的commit上的
     git tag  查看所有标签
     git tag v0.9 <commit-id>  对相应的 commit-id 打标签
     git show <tagname>  查看标签信息
     git tag -a v0.1 -m "version 0.1 tag" <commit-id>

     创建带有说明的标签,-a 指定标签名,-m 指定说明文字

     操作标签   git tag -d <tagname>  删除标签
     git push origin <tagname>  推送某个标签到远程
     git push origin --tags  一次性推送全部尚未推送到远程的本地标签
     git tag -d <tagname> && git push origin :refs/tags/<tagname>  已推送至远程的标签删除,需先删除本地的,再删除远程的(删除命令也是 push )
     显示提交  git last

     显示最近一次的提交

     配置别名   git config --global alias.st status  为 git status 设置别名为 git st,其他的类似:ci 表示 commit ,co 表示 checkout,br 表示 branch
     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"  用颜色可以看出变化,简洁明了
     配置文件  .git/config  可以在这里面添加别名,在  alias 内
  • 相关阅读:
    outlook express 发不出邮件问题
    当您更改为一个值该值不是有效的启动参数对于群集实例的 SQL Server 2000 或 SQL Server 2005 的 SQL Server 服务不能启动
    (转)为gridview“删除”列添加确认对话框
    关于开心网
    Windows 群集(一)
    你们公司有软件实验室吗?
    数据安全性小结
    请教:如何限制C++.net托管组件在设计时不能运行?
    test:请不要访问
    将WDL(华康)等电子文件转换为PDF后转换其它格式文件的方法
  • 原文地址:https://www.cnblogs.com/xiaowenshu/p/10451715.html
Copyright © 2011-2022 走看看