Git学习笔记

(1)开发中的实际场景

(2)版本控制器

①集中式版本控制工具:集中式版本控制工具,版本库是集中存放在中央服务器的,team里每个人work时从中央服务器下载代码,是必须联网才能工作,局域网或互联网 。个人修改后然后提交到中央版本库。举例:SVN和CVS

②分布式版本控制工具分布式版本控制系统没有"中央服务器",每个人的电脑上都是一个完整的版本库,这样工作的时候,无需要联网了,因为版本库就在你自己的电脑上。多人协作只需要各自的修改推送给对方,就能互相看到对方的修改了。举例:Git

(3)Git

git的工作流程图如下所示:

流程如下:

c 复制代码
git clone https://github.com/user/repo.git   # 克隆远程仓库
git checkout -b feature-x                   # 创建并切换到新分支
vim file.txt                                # 修改代码
git add file.txt                            # 暂存变更
git commit -m "Implement feature X"         # 提交到本地
git pull origin main                        # 拉取远程更新(避免冲突)
git push origin feature-x                   # 推送分支到远程
# 在GitHub发起Pull Request,审核后合并到main分支

(3)Git安装和常用的命令(Git Bash下操作)

java 复制代码
设置用户信息
git config --global user.name "itcast"
git config --global user.email "hello@itcast.cn"

查看配置信息
git config --global user.name
git config --global user.email

获取本地仓库
git init

# 目录下创建文件 file01.txt

# 将修改加入暂存区
git add .

# 将修改提交到本地仓库,提交记录内容为:commit 001
git commit -m 'commit 001'

# 查看日志
git log

# 修改file01的内容为:count=1
略

# 将修改加入暂存区
git add .

# # 将修改提交到本地仓库,提交记录内容为:update file01
git commit --m 'update file01'

# 查看日志
git log

# 以精简的方式显示提交记录
git-log

# 查看提交记录
git-log

# 找到倒数第2次提交的commitID
略
# 版本回退
git reset commitID --hard

分支操作:
###########################创建并切换到dev01分支,在dev01分支提交
# [master]创建分支dev01
git branch dev01
# [master]切换到dev01
git checkout dev01
# [dev01]创建文件file02.txt
略
# [dev01]将修改加入暂存区并提交到仓库,提交记录内容为:add file02 on dev
git add .
git commit -m 'add file02 on dev'
# [dev01]以精简的方式显示提交记录
git-log
###########################切换到master分支,将dev01合并到master分支
# [dev01]切换到master分支
git checkout master
# [master]合并dev01到master分支
git merge dev01
# [master]以精简的方式显示提交记录
git-log
# [master]查看文件变化(目录下也出现了file02.txt)
略
##########################删除dev01分支
# [master]删除dev01分支
git branch -d dev01
# [master]以精简的方式显示提交记录
git-log

远程操作:
##########################1-将本地仓库推送到远程仓库
# 完成4.1、4.2、4.3、4.4的操作
略
# [git_test01]添加远程仓库
git remote add origin git@gitee.com/**/**.git
# [git_test01]将master分支推送到远程仓库,并与远程仓库的master分支绑定关联关系
git push --set-upstream origin master
###########################2-将远程仓库克隆到本地
# 将远程仓库克隆到本地git_test02目录下
git clone git@gitee.com/**/**.git git_test02
# [git_test02]以精简的方式显示提交记录
git-log
###########################3-将本地修改推送到远程仓库
# [git_test01]创建文件file03.txt
略
# [git_test01]将修改加入暂存区并提交到仓库,提交记录内容为:add file03
git add .
git commit -m 'add file03'
# [git_test01]将master分支的修改推送到远程仓库
git push origin master
###########################4-将远程仓库的修改更新到本地
# [git_test02]将远程仓库修改再拉取到本地
git pull
# 以精简的方式显示提交记录
git-log
# 查看文件变化(目录下也出现了file03.txt)
略
相关推荐
ljt272496066111 分钟前
Compose笔记(六十九)--Pager
笔记
学历真的很重要22 分钟前
LangChain V1.0 Context Engineering(上下文工程)详细指南
人工智能·后端·学习·语言模型·面试·职场和发展·langchain
qq_54702617931 分钟前
Git 使用指南
git
koo36433 分钟前
pytorch深度学习笔记13
pytorch·笔记·深度学习
崎岖Qiu1 小时前
【OS笔记36】:文件存储空间管理(一)- 空闲区表法
笔记·操作系统·存储管理·文件系统·os
菩提小狗1 小时前
Sqlmap双击运行脚本,双击直接打开。
前端·笔记·安全·web安全
码农小韩1 小时前
基于Linux的C++学习——动态数组容器vector
linux·c语言·开发语言·数据结构·c++·单片机·学习
嵌入式-老费2 小时前
外壳3D结构设计(学习的方法)
学习
代码游侠2 小时前
应用——智能配电箱监控系统
linux·服务器·数据库·笔记·算法·sqlite
山土成旧客2 小时前
【Python学习打卡-Day40】从“能跑就行”到“工程标准”:PyTorch训练与测试的规范化写法
pytorch·python·学习