Git 通用常用使用整理

git 介绍

  • git是免费、开源的分布式版本控制工具
  • 能快速高效处理各类项目,解决了集中式版本控制的缺陷【服务器down掉,协同操作就不可行了】,
  • git的服务器断网也可以开发,因为版本控制是在本地进行的,每个客户端保存的也是整个完整项目(包含历史记录上的,相对来说更加安全)
  • 基于远程服务器的远程代码仓库,一般称为远程库

git 现阶段代码托管中心

* 局域网:gitLab
* 互联网:gitHub【外网】、Gitee码云【国内网站】

git 基本工作流

  1. 工作区【代码存放本地磁盘的目录】、执行命令git add 到第二步
  2. 暂存区【临时存储】执行命令git commit到第三步
  3. 本地库【历史版本-无法删除】执行命令git push到第四步
  4. 远程库

安装及初始化操作

git官网安装 :

https://git-scm.com/downloads

  • git init 新建项目的时候,初始化本地库;当然如果存在项目直接git clone了项目即可;操作完成会生成对应的.git文件
  • 设置用户签名【首次安装git必须设置】,用来区分是哪个操作者提交的代码的
	git config --global user.name [名字]
    git config --global user.email 【邮箱】

ssh免密登录

1、执行命令 ssh-keygen -t rsa -C “yan_yan@.xxx.com” 直接敲三次回车,不用输入【输入密码,通常不输入,否则每次提交拉取代码就很麻烦】

  • ssh-keygen 用于ssh免登录协议生成免密的
  • -t rsa 其中-t表示指定的算法,rsa即著名的非对称算法
  • -C “yan_yan@xxx.com” -c表示描述,一般后面加的邮箱

2、执行完上面命令根目录就生成了.ssh文件,里面包括两个文件私钥id_rsa、公钥id_rsa.pub
3、将~/.ssh/id_rsa.pub公钥文件内的内容复制在gitlab中找到settings、ssh keys然后生成密钥即可

  • gitlab的ssh生成私钥
    在这里插入图片描述

git命令

创建远程库别名

一般提交的时候远程库链接太长,创建别名方便提交
// 创建git远程库别名
git remote -v // 查看当前远程库是否有别名
// 创建别名,创建完成会有两个对应的地址,fetch、push 表示拉取推送
git remote add 别名 远程库地址名称 

克隆代码【包括:拉取代码、初始化本地库、创建别名origin】

git clone 代码链接 // 克隆代码,不需要登录账号
git clone --depth=1 *** // 拉取代码,拉取commit个数

基本工作流

git status // 查看工作区状态
git add //  添加暂存区
git rm --cache 文件名 // 将暂存区域的文件删除,但是本地文件还是存在
git commit - m “注释信息” // 提交本地库
git push 【远程库】 分支名 // 推送代码到远程库
git pull 【远程库】 分支名 //更新本地代码, 拉取远程库代码【拉取代码会自动提交到本地库】

基础命令

// 查看提交记录
git reflog // 查看基础信息
git log // 查看详细提交版本记录【提交者、提交时间、提交版本号】

/*回退或者前进版本【回退到你--hard版本号的版本】*/
git reflog 查看版本号
git reset --hard 版本号

分支相关操作

git branch 分支名 // 创建分支
git branch -v // 查看分支以及分支最后一次提交记录
git checkout 分支名 // 切换分支,加上参数 -b 就是切换并且创建分支
git fetch 分支名  // 拉取远程分支
git merge 分支名  // 将制定分支合并到当前分支
// 删除分支
git branch -D bug_yan // 删除本地的bug_yan分支
分支git push origin --delete bug_yan //删除远程的bug_yan

本地暂存文件

git stash [message] //暂时保存在本地,message为本次保存的注释
git stash list // 查看所有保存的记录列表
git stash pop stash@{num} //恢复,num是可选项,通过git stash list可查看具体值。只能恢复一次
git stash clear //删除所有保存
git stash drop stash@{num} // 删除某个保存,num是可选项,通过git stash list可查看具体值

部分命令演示

  • 创建别名
    在这里插入图片描述
  • git commit信息 && git relog 查看简单的版本信息
    在这里插入图片描述
  • git reset 回退操作
    在这里插入图片描述
  • 查看当前分支指向和版本号
    在这里插入图片描述
  • 查看本地分支以及分支最后一次提交记录
    在这里插入图片描述

git 分支

分支: 版本控制中有需要同时多任务开发,故需要为每个任务创建分支,程序员在自己分支开发,不会影响主分支和其他分支,分支的底层是指针的引用
分支冲突::不同分支修改同一个文件,系统不知道取誰的修改,故是冲突需要我们人为解决;解决完冲突需要重新添加提交
在这里插入图片描述

团队协作

查看git信息

git config --global --list 查看用户配置的name和email
git config --local --list 查看当前仓库配置信息
在这里插入图片描述

代码托管中心

同团队协作:同一团队的,设置权限限制。才有push权限
跨团队协作:fork一个项目A成为新项目B,然后push到B【版本由自己本地控制】,再向原来项目发起pull request,审核通过,A merge B即可
在这里插入图片描述

  • github组内协作邀请成员
    在这里插入图片描述

git项目规范

持续更新~

其他

  • 创建忽略文件
    • 因为有些包体积大,有些包只是编辑器生成的效果,所以创建忽略文件,设置不上传文件
    • 文件是以 .gitignore后缀名,建议存放在项目根目录
// .gitignore文件
.history // 忽略.history文件
*.log // 忽略.log 后缀名的文件
  • git是按照行信息为基础维护文件的
  • git控制版本是通过调用指针指向版本信息

参考

https://www.bilibili.com/video/BV1vy4y1s7k6?p=45

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值