第一章 Git概述
1. git 概念
- Git是一个开源,免费的分布式版本控制系统.
- Git官网
2. git 工作机制
- 工作区: 代码存放的本地位置.
- 暂存区: 临时存储代码.
- 本地仓库: 生成历史版本.
- 远程库: github,gitee.
3. git 下载和安装
Git官网下载地址:https://git-scm.com/
下载完成后,双击安装包,下一步下一步:
安装完成后右键能够看到两个菜单则说明Git安装成功。
第二章 Git 常用命令
命令 | 解释 |
---|---|
git config --global user.name 用户名 | 设置签名 |
git config --global user.email 邮箱 | 设置签名 |
git init | 初始化本地库 |
git status | 显示工作区和暂存区的文件 |
git add 文件名 | 将文件添加到暂存区 |
git add . | 将当前文件夹内容全部添加到暂存区 |
git rm --cached 文件名 | 将文件移除暂存区 |
git commit -m "版本信息" | 将暂存区内容提交到本地库 |
git reflog | 查看版本信息,有几个版本,当前指向哪个版本 |
git log | 查看版本信息,有几个版本,当前指向哪个版本(更详细) |
git reset --hard 版本号 | 切换版本 |
1. 首次安装,设置用户签名(必须)
- 右键打开Git Bash
- 执行下面两条命令
git config --global user.name 用户名
git config --global user.email 邮箱
- 注: 用户签名用来区分不同的开发人员
2. 初始化本地库 git init
- 新建文件夹作为git本地库
- 在新文件中打开Git bash
- 执行命令
git init
注: 删除时直接删除.git文件夹就行.
3.查看本地库状态 git status
- 在本地库中打开Git Bash
- 执行命令
git status
4. 添加到暂存区 git add
- 本地库中打开Git Bash
- 执行命令
git add 文件名
5. 将文件移除暂存区 git rm --cached 文件
- 本地库中打开Git Bash
- 执行命令
git rm --cached 文件名"
6. 提交到本地库 git commit -m"注释版本信息"
- 本地库中打开Git Bash
- 执行命令
git commit -m"版本信息"
7. 查看提交记录 git log
- 本地库中打开Git Bash
- 执行命令
git log
8. 产生新版本
注:提交后修改了代码,要再 add ,commit, 生成新的版本.
9. 切换版本 git reset --hard 版本号
- 本地库中打开Git Bash
- 执行命令
git reset --hard 版本号
可以看到不同版本文件内容不一样
10. .git 文件夹查看分支,版本
第三章 分支
分支好处
- 并行推进多个功能开发,提高开发效率.
- 各个分支独立,不会对别的分支造成影响.
分支命令
命令 | 解释 |
---|---|
git branch | 查看当前分支 |
git branch -v | 查看当前分支,显示版本号,注释 |
git branch 分支名 | 创建新分支,在哪个分支下创建的,就和哪个分支初始内容一样 |
git checkout 分支名 | 切换分支 |
git merge 分支名 | 将分支名合并到当前分支,只会造成当前分支内容修改. |
1. 查看分支 git branch
- 本地库中打开Git Bash
- 执行命令
git branch
- 执行命令
git branch -v
2.创建分支 git branch 分支名
- 本地库中打开Git Bash
- 执行命令
git branch 分支名
3. 切换分支 git checkout 分支名
- 本地库中打开Git Bash
- 执行命令
git checkout 分支名
4. 合并分支 git merge 分支名
- 本地库中打开Git Bash
- 执行命令
git merge 分支名
注意:
5. 合并分支 手动解决冲突
冲突原因: 两个分支,对同一个文件的同一个位置都进行了修改,自动合并分支会失败,需要手动修改不同的地方.
步骤:
- 打开冲突文件,修改冲突位置的代码
- git add 文件,到 暂存区
- git commit -m “合并了hi.txt”
注: 冲突文件commit 不能带文件名.
- 我这里直接用vim编辑器修改
注: 合并分支,只会修改合并到的那个分支,被合并的分支内容还是合并前的.
第四章 远程仓库 Gitee
1. 团队协作
- 团队合作时需要将代码存放到云端, 每个人从远程库克隆到个人电脑,进行开发.
2. 远程命令
命令 | 解释 |
---|---|
git remote add origin 远程仓库地址 | 本地仓库连接远程仓库. |
git remote | 查看连接的远程服务器名 |
首次push:git push -u origin 本地分支名:远程分支名 | 将本地分支上的内容推送到远程分支上. |
首次push简写:git push -u origin 本地分支名 | 如果本地分支和远程分支名一样可只写一个 |
git push | 使用带 -u 的推送后,该分支再次推送可只写git push |
git clone 远程仓库地址 [本地目录] | 从已存在的远程仓库拷贝到本地,并自动生成对应的本地仓库 |
git fetch [远程仓库名] [分支名] | 将远程仓库里的更新都抓取到本地,不会进行合并 |
git pull [远程仓库名] [分支名] | 远端仓库的修改拉到本地并自动进行合并 |
git pull | 从远程仓库下载代码到本地仓库 |
步骤:
- 在Gitee官网上注册账号,配置公钥.
- 创建远程仓库.
- 本地仓库连接远程仓库.
git remote add origin 远程仓库地址
- 本地仓库push推送代码.
git push -u origin master
2.1 本地仓库连接远程仓库 git remote add origin 远程仓库名
- 执行命令:
git remote add origin 远程仓库名
2.2 push 代码到远程仓库
- 执行命令:
git push -u origin 本地仓库名:远程仓库名
-u
记录本地分支和远程分支的关联关系,下次推送时可简写git push
注:
-u
记录本地分支和远程分支的关联关系,下次推送时可简写git push
-f
表示强制覆盖--set-upstream
推送到远端的同时并且建立起和远端分支的关联关系。
2.3 查询分支映射关系 git branch -vv
- 执行命令:
git branch -vv
2.4 从远程仓库克隆 git clone
-
如果已经有一个远端仓库,我们可以直接clone到本地。
-
命令:
git clone <仓库路径> [本地目录]
-
本地目录可以省略,会自动生成一个目录
2.5 从远程仓库下载到本地 git pull
git pull [远程仓库名] [分支名]
- 一个本地仓库 push代码,提交了一个hello.txt文件
- 另一个本地仓库 pull代码,成功,发现本地多了个文件hello.txt
- 注: fetch 和 pull的区别
- 命令:git fetch [remote name] [branch name]
只抓取到本地,不会进行合并 - 命令:git pull [remote name][branch name]
拉取到本地并自动进行合并,等同于fetch+merge
- 命令:git fetch [remote name] [branch name]
第五章 IDEA 使用Git
- 设置Git路径
- 设置本地仓库
- 连接远程仓库
- 使用
第六章 Linux常用命令
命令 | 解释 |
---|---|
pwd | 显示当前所在的目录路径 |
ls | list files 列出所有文件 |
ll | 列出所有文件(更详细) |
touch | 在当前目录中新建文件(touch a.txt 新建一个a.txtwe年) |
rm | 删除文件(rm a.txt 删除文件a.txt) |
rm -r | 删除文件夹(rm -r download删除文件夹download) |
clear | 清屏 |
tail -n 1 文件名 | 查看文件的最后一行内容 |
cat 文件名 | 打印文件内容 |
touch 文件名 | 创建文件 |
第七章 参考资料
GitHub, GitLab相关视频 ttps://www.bilibili.com/video/BV1vy4y1s7k6?p=27