Git使用的正确姿势

Git是什么?

一款分布式版本管理的软件,Linux 内核,通过....操作...!!!

  • 分布式
    小组内每个人本地电脑上都可以有一个完整版本
  • 版本管理
    可以记录下我们每一次对代码的新增、修改,删除,返回 等操作

跟GitHub又有什么关系

git与github 是什么关系?

项目这个东西肯定大家一块撸开心呀!

建国做登录,我做支付

思考一下,如果我登录做完了,我两代码要怎么合并

我把189,190行粘给你,你把184行粘给我 并不是这样的

我们都提交一个位置, 大家都在这进行同步好了

建国写完 提交线上 我也也要提交,这个时候

git的作用就是检查看你们两写的有没有重复

github的作用就是 没有重复好,提交到我这里,我保管

此刻你可以理解 他们两个是合作关系 github就是一个线上代码仓库

有同学说了 咱们国人有个叫码云线上仓库跟github一样?

一毛一样,并且我推荐使用码云

你的代码是提交到github还是提交到gitlab 只需要修改一下地址就好

git操作命令都是一致的

一图胜千言

Git使用的正确姿势_第1张图片
上面电脑是我们

与上图一样 我的代码提交到线上github ,然后建国,韩梅梅,拼西西,都去github拉取代码

思想

现在你要有一个思想,线上库(github) 本地库(git)

先完成提交本地,在提交线上,注意顺序,这个思想贯穿全剧

创建一个 完全 空的仓库

Git使用的正确姿势_第2张图片
2020-12-05_133534.png

获取线上库项目地址: https://github.com/xxx/test

本地完整提交流程

拉取代码 git clone https://github.com/xxx/test

  • 点击进入项目
  • 注意windows需要设置 显示隐藏文件
  • 你会看到一个.git 这个就是git配置文件

第一步 查看状态 git status

  • 尝试修改一些内容 ,执行 git status
  • 你会发现一个红色文件, git记录你修改文件

第二部 git add .

  • 我今天开发工作结束,或者我这个功能开发完了,需要存档
  • 执行 git add . 将所有更改加入追踪,就是可以提交
  • 在执行一个查看状态(git status),你会发现刚才文件名变成绿色

第三部 git commit -m 给我这次修改,加上一条说明

  • 这个修改你做了什么 ? 在此次修改打上一个日志
  • 就想我打游戏存了一个档,代码蹦了不要紧 我可以重新开始
  • 初次使用需要配置个人的用户名称和电子邮件地址
配置个人的用户名称和电子邮件地址,Git 每一次提交时都会引用这两条信息,说明是谁提交了更新,并记录历史.没有添加信息,不能给文件加log,与登录账号密码无关
$ git config --global user.name "注册名称,github登录界面右上角查看"
$ git config --global user.email "注册邮箱@xxx"
$ git config --list 查看  

事情到这里 你已经完整的完成了一次 本地提交

线上更新

代码需要与其他小伙伴同步你的代码,咱们需要同步更新云仓库 github

git push // 提交到线上当前分支

此时你做完,本地存档,并且线上更新操作,是不是很简单

代码下载流程

git clone  https://github.com/name/xxxx        下载默认分支
git clone -b  https://github.com/name/xxxx  下载指定分支
git checkout -b     "已有工程取远程分支并与本地分支同步"

代码更新流程

git pull 拉取当前最新内容
git pull origin  拉取指定分支最新内容

常规操作

远程提交流程
远程提交需要每次输入账号密码
也可输入缓存命令,在进行一次提交,完成缓存账号密码到本地


git push    "提交默认远程分支"

git push origin    "提交库并创建分支"

缓存本地账号密码
git config --global credential.helper store 

如果输入错误,清除缓存
git credential-manager uninstall  

分之操作 (branch)

版本迭代每一个版本修改内容不能混淆,就需要进行分支操作
查看分支

git branch -r        //查看远程分之:
git branch -v        //查看本地分之
git branch -a        //查看所有分之

新建分支

// 创建分支
git branch   
//切换分支
git checkout   
 // 或者 创建同时并且移动
git checkout -b  
// 写入创建分支日志
git commit -m "init_branch_info"
// 提交远程库 
git push origin  

分之合并
注意: 分支合并之前 git status 工作区要是干净的
例如: dev 合并 master dev的版本一定高于master

   git checkout master 
   git merge dev
   退出Vi编辑模式 :wq

回滚版本

$ git log  //查看所有日志
$ git reset --hard c75284e3ad99b6f43641d91168aa82322e6cfbd5 //根据40位的哈希值,回滚代码
//不要再主要分之上面操作
$ git  push -f  //强制提交
$ git revert HEAD //回滚最后一次提交

恢复删除分之

// 删除分支

// 删除本地分支 
git branch -D  
// 删除远程分支
git push origin :dev

//恢复分支   

// 获取删除分支日志 log 获取 HEAD@{4} 
$ git reflog  
// 根据 HEAD码选择恢复那个已经删除分支
$ git branch  HEAD@{4}

从零本次初始化版本库

git init  //初始化
git remote add origin https://gitee.com/msea/interview 
git remote -v //查看
git branch --set-upstream-to=origin/master master 
git pull origin master --allow-unrelated-histories  //拉取远程库,并更新本地,并建立联系,可能会冲突
//在执行提交流程

nrm 源管理工具

国内一般使用 淘宝镜像,方便我们 在npm 与淘宝镜像源进行切换

npm install -g nrm
nrm ls 查看当前使用源,带*的是当前使用的源
nrm use taobao 使用淘宝镜像源

命令行常用操作

$ vi 打开一个文件 esc :wq   //退出linux命令行
$ i 光标出现 insert //编辑状态
$ touch file.txt          //创建文件
$ madir // 创建文件
$ rm //删除文件 
$ rm -f file.txt //删除文件
$ rm -d menghai  //删除一个空目录
$ rm -rf haiyang //递归删除当前空目录

觉得帮到您记得点赞

你可能感兴趣的:(Git使用的正确姿势)