Git学习

Git

要点

  1. 从远程库克隆
    git clone URL
    
  2. 查看仓库状态
    git status
    
  3. 查看日志,简要
    git log --pretty=oneline
    
  4. 版本回退,HEAD^上个版本,HEAD^^上上个版本
    git reset --hard  [至少四位版本号]
    
  5. 使用SSH登录可以不用每次操作都输入密码,ssh-keygen在本地生成公钥,私钥,将公钥上传到github,clone是使用ssh登录的URL。
  6. 拉取远程仓库,自动合并,第一个为远程分支。
    git pull origin master:master
    
  7. 使用fetch拉取,不合并,有冲突时可先fetch,然后merge分支。
    git fetch origin master:master
    
  8. 创建分支
    git branch branch_name
    
    分支查看
    git branch 
    
    切换分支
    git switch branch_name
    
    低版本切换分支
    git checkout branch_name
    
    合并分支,将tmp合并到当前分支
    git merge tmp
    
    推送分支,第一个为本地分支,第二个为远程分支
    git push origin master:master
    
  9. 打标签
    git tag -a v1.0 -m "my version1.0"
    
    推送标签
    git push origin v1.0
    

基础知识

  • 三种状态:已提交,已修改,已暂存

  • 简单配置:姓名、邮箱,–global表示全局设置。
    在这里插入图片描述

  • 设置本地git仓库

    • 空文件夹
      在这里插入图片描述
    • 已存在文件的文件夹
      在这里插入图片描述
  • 克隆现有仓库

    $ git clone https://github.com/libgit2/libgit2
    

    这会在当前文件夹创建一个libgit2的目录,并在这个目录下初始化一个.git文件夹。后面加一个文件目录,会保存到新创建的目录里。

  • git status检查文件处于什么状态,-short 格式更紧凑的输出。
    在这里插入图片描述

  • git add 追踪新文件,把已跟踪的文件放到暂存区,合并时把有冲突的文件标记为已解决状态。

  • 忽略追踪,编写.gitignore文件。
    在这里插入图片描述

  • git diff 查看尚未暂存的改动。

  • git commit 提交,-m提交信息,-a把所有已经追踪的文件暂存起来一起提交。
    在这里插入图片描述

  • CONTRIBUTING.md位放到暂存区,-a后直接提交
    在这里插入图片描述

  • git rm取消追踪,删除已经修改或者放到暂存区的文件,要加-f,强制执行,防止误删,因为这些文件没有快照。
    在这里插入图片描述

  • 把文件从暂存区移除但保留在工作目录中

git rm --cache README
  • git log查看提交历史,
    • –patch查看每次提交的变化
    • –stat简要信息,–pretty=fomat:"参数"定制显示;
      在这里插入图片描述
      提交者是将commit的人,作者是做出修改的人
    • –graph通过字符串形象的展示分支合并历史。
    • -since、–until
      git log --since=2.weeks
      
    • –author
    • –grep 搜索提交说明中的关键字;
      *指定多个-author-grep会匹配任意符合的,–all-match,只会输出匹配所有条件的提交。
      在这里插入图片描述
    • -S str 显示添加或删除str的提交。
    • 在这里插入图片描述- 撤销操作
    • 如果有文件忘记提交或提交信息写错,将暂存区的文件提交
    git commit --amend
    
    例:有文件忘记放到暂存区,只会有一个提交,第二次提交会覆盖第一次的。
    git commit -m 'initial commit' git add forget_file git commit --amend
    - 取消暂存的文件
    git reset HEAD file_name
    - 撤销对文件的修改 <危>
    git checkout -- file_name
  • 拉取远程仓库
    git clone
    
    • git remote -v 显示简写及URL
  • 添加仓库
    git remote add <shortname> <url>
    
  • 上传
    git push origin master
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值