git简介、命令

git

分布式版本控制器

工作流程

  • 工作区(写代码的终端)
  • 缓存区
  • 版本库
  • 将版本库内容迁到远端(GitHub / gitee)
  1. 工作区写代码
  2. 工作区代码编辑完毕之后将代码提交到暂存区
    • 暂存区:类似于过滤层 保护工作区与版本库的代码避免错误操作
  3. 将暂存区的代码提交到版本库 形成版本(版本可以进行处理)

git简介、命令

下载git

git bash终端操作

git --version 查看版本

git第一次操作配置个 人信息

git config --global user.name  名字
git config --global user.email 邮箱地址
git config --list

初始化git

一项目被git管理 先初始化
git init 
git默认情况下不会管理空文件
git 管理文件包括所有的子文件

查看当前被git管理的项目文件的状态

git status
- 如果文件显示红色,,文件在工作区没有向暂存区提交
- 如果文件显示绿色,文件在暂存区没有向版本库提交

将工作区的文件提交到暂存区

git add index.html 提交index.html文件
git add css/   提交css文件夹
git add --all  提交所有文件
git add .      提交所有

将暂存区文件拉回到工作区

git reset HEAD -- index.html 拉回文件
git reset HEAD -- css/   拉回文件夹
git reset HEAD -- .    拉回所有

将暂存区提交到版本库(形成一个版本控制)

git commit -m '版本日志';

查看版本

git log
返回:id
提交作者
时间

git reflog 
返回 :版本号 版本日志

版本回退

git reset --hard 版本id
git reset --hard HEAD ^   一个^ 代表回退一个版本

文件的比对

git diff 文件名称 查看当前文件工作区好人暂存区的不同
git diff  分支名 查看工作区和版本库的不同
git diff --cached  查看缓存区和版本库的不同

文件的删除

git rm -f  文件名       删除暂存区和工作区的文件
git rm --cached        删除暂存区 保留工作区

git管理空文件 / git忽略某个文件

  • 对空文件夹进行管理 在文件夹里面 放置一个.gitkeep;
  • 不让git管理某个文件 : 在git管理的目录下面 放置一个文件 : gitignore 把不需要管理的文件 添加到.gitignore中

分支

master 主分支
  • master 不能进行项目开发
    • 1.保持最终最干净的代码
    • 2.存在公共的库
    • 3.整个项目的大架构
  • 创建一个开发分支(自己创建的分支)
    • dev分支
      1. 合并每一个分支的整体项目(用于测试,用于项目联盟)
      2. 开发过程中,需要合并到项目中的代码

分支的操作

git branch              查看分支
git branch 分支的名称     创建分支
git checkout 分支名称     切换分支
git checkout -b 分支名校  创建并切换分支
git branch  -d 分支名称   删除分支
git merge 分支名称        合并

远端(github/gitee)

想把本地仓库 推送到远端
1. 在github创建仓库
2. 拿到远端仓库地址
    a.通过https
    b.通过SSH秘钥
3.将本地仓库按照远端仓库地址推送

将本地仓库按照远端仓库地址推送

git remote add origin   添加远端仓库的地址
git push -u origin 分支名称
git remote rm origin  如果更改远端仓库地址之前 先把上一次远端连接移除

将远端仓库拉到本地

git clone 远端地址
git clone -b  远端分支名称 远端仓库地址
git pull origin 分支名称

配置密钥

ssh-keygen -t rsa -C "你的邮箱地址"
cat ~/.ssh/id_rsa.pub

 配置密钥流程:
            1:在终端 ssh-keygen -t rsa -C “你的邮箱地址” 
            2:在终端 cat ~/.ssh/id_rsa.pub
            3:得到 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDFI/4Xh6vEnBKoadpohBvCP8PQdi0zGRupOfn8IrWqz+G9ZAGFJdAEDItXhQs6HIfk3ps34xnPuiSRAE8y/oCtNiUgcQ0Q8l2TGhFBZ2q1rrv15+HmBhf07obsDGNU01WxbVwf81Vv8R6Q9LI7D31j8ifFHJJOKtBEJoMMDuehHnXltzQ5/onRpE+QRBW3UuX9Fhvw/aLoX9gD5M3AuwRzSqe/gALViKtzr+Pj2tRjbwUQwmHR62Obz9kFTHQ414GmtUYpRSRg6VwAJ5dl+heijW1j6bR1gWpnyKW5Hs6PM9PAIx9UiYHfpAl+kPYguWxZHigSd7OoMzAhBU64dyb9ZFSIZqfhodQgiEIZVj3CKTYAgdLSWchTVLq6U3te+rhAnrWD2MBT7IFPZ+jQZoH1kNhx3y8OvEq6TudrP6ICkvDN6dYD4r007gaXmRT5WFqWaKGhf2XI8fJg/cAnWMImURcfUI/KgIl1LXCMUP/lT1/HbTjkTa7E0n7tIqlXJAM= 

            4:把拿到的密钥配置到github

git冲突

一定要先拉取远程仓库的代码,再修改,不然会产生冲突,报错。

解决方案:

手动合并

vscode可视化工具

ctrl shift g : 源代码管理

+ 暂存
√ 提交
小乌龟可视化工具

TortoiseGit

相关推荐