Git常用命令

根据马士兵教育的课程资料整理所得,仅用于学习使用,如有侵权,请联系删除。

Git常用命令

查看版本号

  • git --version

清屏

  • clear

设置签名

  • git config --global user.name “dujinliang”

设置邮箱

  • git config --global user.email “1162378922@qq.com”

切换目录

  • cd E:

本地仓库的初始化

  • git init

显示文件夹下的文件

  • ll
  • ll -la
    • 显示隐藏文件

将文件提交到暂存区

  • git add Demo.txt

将暂存区中的内容提交到本地库

  • git commit -m “这是我提交的第一个文件” Demo.txt

查看工作区和暂存区的状态

  • git status

查看提交的历史记录(从近到远)

  • git log
    • 到日志过多,会出现分页的效果
    • 下一页 : 空格
    • 上一页 :b
    • 到页尾,显示END
    • 退出 :q
  • git log --pretty=oneline
    • 在一行中进行展示
  • git log --oneline
    • 在一行进行展示,关键字是简写的
  • git reflog
    • 在一行进行展示,关键字是简写的,有一个回退步数的显示,HEAD@{数字},即回到当前这个历史版本需要走多少步

版本回退

  • git reset --hard 索引号
    • 本地库指针移动的同时,重置暂存区,重置工作区
  • git reset --mixed 索引号
    • 本地库的指针移动的同时,重置暂存区,但是工作区不动
  • git reset --soft
    • 本地库指针移动的时候,暂存区和工作区都不动

删除文件

  • 删除工作区中的文件
    • tm Test.txt
  • 将删除操作同步到暂存区
    • git add Test.txt
  • 将删除操作同步到本地库
    • git commit -m “删除Text.txt文件” Test.txt

找回本地库中删除的文件

  • 实际上就是将历史版本切换到刚才添加文件的那个版本即可
    • git reset --hard 索引号

找回暂存区中删除的文件

  • 删除工作区数据
    • rm Test.txt
  • 同步到缓存区
    • git add Test.txt
  • 恢复暂存区中的数据
    • git reset --hard 索引号
    • git reset --hard HEAD

比较文件

  • git是按照行为单位管理数据,所以删除一行,添加一行

  • 将工作区中的文件和暂存区中的文件进行比较

    • git diff [文件名]
  • 多个文件的比对,比较工作区和暂存区中所有的差异

    • git diff
  • 比较暂存区和工作区中的差别、

    • git diff [历史版本] [文件名]

分支

  • 同时多个分支可以并发开发,互相不耽误,互相不影响,提高开发效率
  • 如果有一个分支功能开发失败,直接删除这个分支就可以了,不会对其他分支产生任何影响

在这里插入图片描述

查看分支

  • git branch -v

创建分支

  • git branch branch01
  • 你在哪个分支上,是通过*来显示的
  • 在这里插入图片描述

切换分支

  • git checkout branch01
  • 在这里插入图片描述

合并分支

  • 先切换到主方法中
  • git merge branch01
    • 在这里插入图片描述

查看文件内容

  • cat Test5.txt
  • 出现冲突
    • 在用同一个文件的同一个位置修改

    • 在这里插入图片描述

    • 经过商议,留下想要的

    • 将工作区中内容添加到暂存区

    • 在这里插入图片描述

    • 然后进行commit操作

    • 在这里插入图片描述

查看别名

  • git remote -v

创建别名

  • git remote add 别名 地址

    • 在这里插入图片描述

    • fetch

      • 获取
    • push

      • 推送

向远程库推送数据

  • git push 远程库别名 要推送的分支
    • 在这里插入图片描述

从远程库克隆数据

  • git clone 远程库的地址

  • 克隆操作可以帮我们完成

    • 初始化本地库
    • 将远程库内容完整的克隆到本地
    • 替我们创建远程库别名

加入团队

  • 可以从GitHub中clone对方的数据,但无法提交,可由对方向自己发送邀请,复制邀请链接,由被邀请者在浏览器中打开同意即可

拉取操作

  • pull操作,相当于fetch + merge

抓取操作

  • git fetch origin master

  • 在抓取操作执行后,只是将远程库的内容下载到本地,但是工作区中的文件并没有更新,工作区中还是原先的内容

  • 抓取后可以去远程库看看内容是否正确

  • 在这里插入图片描述

  • 发现内容都正确,就可以进行合并操作了

    • 合并之前应该将分支切换回来

    • 在这里插入图片描述

    • 进行合并:merge

    • 在这里插入图片描述

  • 远程库的拉取可以直接利用pull命令来完成

    • git pull origin master

区别

  • fetch + merge 操作

    • 为了保险,慎重
  • pull

    • 代码简单,省事
  • 多人共同提交数据时,会出现冲突问题,当一个人提交完成后,另一个人提交时会报错,需要先抓取该数据,对冲突进行处理,再提交,再提交时,git commit “注释信息”,此处不写文件名

跨团队合作

  • 在这里插入图片描述

  • 获取远程库地址

  • 进行fork操作

    • 进入账号后,复制地址
    • 点击fork操作
    • 在这里插入图片描述
  • 克隆操作

  • 然后更改数据,添加到暂存区,然后提交到本地库,然后push到远程库

  • 进行pull request,等待审核

  • 进行审核

  • 可以互相留言

  • 确定通过后,merge合并

免密操作

  • 进入用户主目录中,

    • cd ~
  • 执行命令,生成一个.ssh目录

    • ssh-keygen -t rsa -C GitHub邮箱
    • C要大写,邮箱是GitHub注册的账号的时候对应的邮箱
    • 三次回车确认默认值即可
  • 发现在.ssh目录下有两个文件

    在这里插入图片描述

  • 打开id_rad.pub文件,将里面的内容进行复制操作

  • 打开GitHub账号,找到settings,ssh and gpg keys,new ssh keys

    • 在这里插入图片描述

    • 生成密钥以后,就可以正常进行push操作了

      • 对ssh远程地址起别名
      • 展示别名
      • 添加到暂存区,提交到本地库,然后push到远程库(地址用的是ssh方式的地址)

允许不相关历史的合并

  • 用于两个仓库有不同的开始点

  • –allow -unrelated-histories

  • git pull 地址 master --allow -unrelated-histories

    • i进入编辑
    • ese退出编辑,:wq退出
  • push推送

    • git push -u origin master -f
  • 这样远程库和本地库就可以交互了

  • 一般在开发中,先pull操作,再push操作,不会直接进行push操作

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值