Git基本操作

打开git命令窗口

git --v查看版本

设置用户名和邮箱

git config --global user.name "username"

git config --global user.email "email_number"

查看配置信息

git config --global list

很多文件操作命令和Linux一样

指定名称就会多一个


git status 查看文件夹状态

git add file1.txt

git commit -m "这是第一次提交"

(只提交暂存区中的内容,也就是被git add的才会被commit)

git add . 将当前目录所有文件放到暂存区如果git commit 没有加文字,就会进入vim模式在顶行输入提交信息,也就是每次commit必须有提交信息

这个提交信息不建议乱写,这样对于之后查看文件很不方便,版本管理起来也很难受

vim的用法和Linux中一致,i--插入模式,ESC--回到普通模式,:--底行模式,wq保存

git -log 查看仓库提交历史记录 --oneline简版

git reset --soft /--hard /--mixed 版本号

git 中的所操作都是可以回溯的,

git reflog ,再使用上面的git reset对应的版本号即可

直接使用rm -rf 删除文件,只是在本地删除,暂存区中没有被删除

git ls-files 查看暂存区文件内容

rm删除之后还要用git add .

或者是直接使用

git rm

这些操作之后都要进行git commit

.gitignore忽略文件,一般是一些log和其他在该文件中包含的文件

git push 和git pull是git分布式仓库的同步操作

创建git仓库

bash 复制代码
mkdir git-repo
cd git-repo
git init 
touch README.md
git add README.md
git commit -m "first commit"
git remote add origin https://gitee.com/have-a-book/git-repo.git
git push -u origin "master"


冲突会显示成这样,要解决冲突

bash 复制代码
<<<<<<< HEAD  
<your-modified-code>  
=======  
<original-code>  
>>>>>>> <commit-id>

修改冲突部分,选择要保留的内容。你可以保留原始代码,删除你的修改;或者保留你的修改,删除原始代码。也可以将两者结合起来,创建一个新的解决方案。

在Git中,merge和rebase是两种不同的合并代码的方式。

  1. Merge: 当你需要将一条分支的修改合并到另一条分支时,可以使用merge命令。例如,如果你有一个名为"feature"的分支,并且这个分支已经开发完成,你想要将这个分支的修改合并到"main"分支,那么你可以在"main"分支上执行"git merge feature"。在合并过程中,如果遇到代码冲突,需要手动解决冲突后,再执行"git commit"提交。 Merge操作会保留所有的commit历史,并且在merge后,会在当前分支上生成一个新的commit。
  2. Rebase: 当你需要将一条分支的修改重写到另一条分支上时,可以使用rebase命令。例如,如果你有一个名为"feature"的分支,并且你想要将这个分支的修改重写到"main"分支上,那么你可以在"feature"分支上执行"git rebase main"。在rebase过程中,Git会尝试将你的修改应用到"main"分支的最新提交上。 Rebase操作会重写历史记录,将所有的commit按照时间顺序线性地排列。与merge不同,rebase不会保留merge的历史记录,也不会生成新的commit。

总之,merge和rebase都可以实现代码的合并,但是它们的工作方式和使用场景有所不同。merge保留了所有分支的历史记录和合并记录,而rebase则将这些记录线性化。因此,在选择使用merge还是rebase时,需要根据具体的项目需求和代码管理策略来决定。

相关推荐
天远数科1 天前
前端全栈进阶:使用 Node.js Crypto 模块处理 AES 加密与天远API数据聚合
大数据·api
天远API1 天前
后端进阶:使用 Go 处理天远API的 KV 数组结构与并发风控
大数据·api
千匠网络1 天前
S2B供应链平台:优化资源配置,推动产业升级
大数据·人工智能·产品运营·供应链·s2b
WX-bisheyuange1 天前
基于Spring Boot的智慧校园管理系统设计与实现
java·大数据·数据库·毕业设计
AI营销快线1 天前
AI如何每日自动生成大量高质量营销素材?
大数据·人工智能
KKKlucifer1 天前
从 “人工标注” 到 “AI 驱动”:数据分类分级技术的效率革命
大数据·人工智能·分类
天远云服1 天前
Spring Boot 金融实战:如何清洗天远API的 KV 数组格式风控数据
大数据·api
我爱鸢尾花1 天前
第十四章聚类方法理论及Python实现
大数据·python·机器学习·数据挖掘·数据分析·聚类
数据猿1 天前
【金猿人物展】涛思数据创始人、CEO陶建辉:实现AI时代时序数据库向“数据平台”的转型
大数据·数据库·人工智能·时序数据库·涛思数据
GIS数据转换器1 天前
2025无人机遥感新国标解读
大数据·科技·安全·机器学习·无人机·智慧城市