git版本控制学习

1.环境搭配

2.Linux常用指令

复制代码
cd:更改目录

cd..回到上一级目录

pow:显示当前所在的目录路径

li(||):列出当前目录所有文件,只不过||例出的内容更为详细

touch:新建一个文件夹如touch index.js就会在当前目录下新建一个index.js文件

rm:删除一个文件,rm index.js 就会把index.js文件删除

mkdir:新建一个目录,就是新建一个文件夹

rm -r:删除一个文件夹,rm -r src 删除src目录

mv移动文件,mv index.html src    index.html是我们要移动的文件 ,src是目标文件夹

clear:清屏

reset 重新初始化终端/清屏

history查看命令历史

help帮助

exit退出

#表示注释

git工作原理

基本概念

  • 仓库(Repository):存储项目所有文件和版本历史的数据库。

  • 工作区(Workspace):本地目录,直接编辑文件的地方。

  • 暂存区(Staging Area) :临时存放待提交的修改(用git add添加)。

  • 提交(Commit):将暂存区的修改永久保存到本地仓库(生成唯一ID)。

  • 分支(Branch) :独立开发线,默认分支为mastermain

  • 远程仓库(Remote):托管在服务器(如GitHub)的仓库,用于协作。

  • 合并(Merge):将分支的修改整合到另一分支,可能产生冲突。

  • 冲突(Conflict):多人修改同一文件时需手动解决的差异。

工作流程

工作区、暂存区和仓库

Git 的工作流程涉及三个主要区域:工作区(Working Directory)、暂存区(Staging Area)和仓库(Repository)。

  • 工作区:这是用户实际编辑文件的地方。所有未提交的更改都存在于工作区中。
  • 暂存区 :暂存区是一个临时区域,用于保存即将提交的更改。通过 git add 命令将工作区的更改添加到暂存区。
  • 仓库 :仓库是 Git 存储所有提交历史的地方。通过 git commit -m命令将暂存区的更改永久保存到仓库中。

分支与合并

Git 的分支机制是其强大功能之一。每个分支都是一个指向某个提交的指针,默认分支通常称为 mastermain

  • 创建分支 :通过 git branch <branch-name> 命令可以创建一个新分支。
  • 切换分支 :通过 git checkout <branch-name> 命令可以切换到指定分支。
  • 合并分支 :通过 git merge <branch-name> 命令可以将指定分支的更改合并到当前分支

远程仓库

Git 支持与远程仓库的交互,通常用于团队协作。

  • 克隆仓库 :通过 git clone <项目链接> 命令可以将远程仓库克隆到本地。
  • 拉取更新 :通过 git pull 命令可以从远程仓库拉取最新的更改并合并到当前分支。
  • 推送更改 :通过 git push 命令可以将本地分支的更改推送到远程仓库。

git常用命令

基础命令
命令 作用
git init 初始化本地仓库
git clone <url> 克隆远程仓库到本地
git status 查看工作区和暂存区状态
git add <file> 添加文件到暂存区(git add .添加全部)
git commit -m "消息注释" 提交暂存区内容到本地仓库
git push 推送本地提交到远程仓库
git pull 拉取远程更新并合并到本地
分支与合并
命令 作用
git branch 查看分支列表
git checkout -b <branch> 创建并切换分支
git merge <branch> 合并指定分支到当前分支
git rebase <branch> 变基(线性历史,慎用)
查看与回退
命令 作用
git log 查看提交历史
git diff 查看工作区与暂存区的差异
git reset --hard <commit> 回退到指定提交(谨慎使用)

git文件操作

get status 查看所有文件状态

get status 文件名 查看指定文件状态

当遇到不想的提交文件时候

*.txt #忽略所有.txt结尾的文件,这样的话上传就不会被选中

!lib.txt #但lib.txt文件除外

/temp #仅忽略项目根目录下的todo文件,不包括其他目录temp

build/ #忽略builld/目录下的所有文件

doc/*.txt #会忽略 doc/notes.txt 但不包括 doc/server/arch.txt

git的工作流程一般是这样的

1.在工作目录中添加,修改文件 user.xml

2.将需要进行版本管理的文件放入暂存区域;git add

3.将暂存区域的文件提交到git仓库. git commit

因此git管理的文件有三种状态:以修改(modified),已经暂存(staged),已经提交(committed)

复制代码
# 初始化一个新的 Git 仓库
git init

# 将文件添加到暂存区
git add <file-name>
git add .提交所有文件

# 提交更改到仓库
git commit -m "Commit message"

# 查看当前状态
git status

# 查看提交历史
git log

# 创建并切换到新分支
git checkout -b <branch-name>

# 合并分支
git merge <branch-name>

# 克隆远程仓库
git clone <repository-url>

# 拉取远程更新
git pull

# 推送本地更改
git push

实际演示

仓库初始化

1.删除原本文件

2.创建一个txt文件。处于工作区

3.查看文件状态

4.提交文件到暂存区 git add . 提交所有文件

5.查看文件状态

6.提交到本地仓库 git commit -m "注释"

7.查看文件状态

指向rm mm.txt 后会删除mm.txt文件

以上的工作流程。

克隆远程仓库 gitee为例

1.在gitee创建远程仓库

2.克隆远程仓库到本地仓库

将本地仓库代码更新到远程仓库

1.创建远程仓库。

注册gitee或者gethub,登录创建我的仓库

2.配置ssh密钥。

3链接远程仓库。

4.将本地仓库更新文件添加到远程仓库。

相关推荐
趁你还年轻_31 分钟前
记录一次git提交失败解决方案
git
请你喝好果汁6412 小时前
Jupyter Notebook 配置学习笔记
笔记·学习·jupyter
冬日枝丫2 小时前
【spring】spring学习系列之六:spring的启动流程(下)
java·学习·spring
ocean10102 小时前
项目管理学习-CSPM-4考试总结
学习·程序人生
虾球xz2 小时前
游戏引擎学习第286天:开始解耦实体行为
c++·人工智能·学习·游戏引擎
應呈2 小时前
FreeRTOS的学习记录(任务创建,任务挂起)
java·linux·学习
序属秋秋秋2 小时前
我的创作纪念日——《惊变256天》
学习·程序人生·学习方法
LuckyLay3 小时前
Vue百日学习计划Day9-15天详细计划-Gemini版
前端·vue.js·学习
持之以恒的天秤4 小时前
线程同步学习
linux·学习