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时,需要根据具体的项目需求和代码管理策略来决定。

相关推荐
Cchaofan2 小时前
Git/GitLab日常使用的命令指南来了!
git·gitlab
睎zyl2 小时前
Spark自定义分区器-基础
大数据·分布式·spark
巨龙之路2 小时前
【TDengine源码阅读】DLL_EXPORT
大数据·时序数据库·tdengine
元6333 小时前
搭建spark-local模式
大数据·spark
巨龙之路3 小时前
TDengine编译成功后的bin目录下的文件的作用
大数据·时序数据库·tdengine
莫叫石榴姐4 小时前
大模型在数据分析领域的研究综述
大数据·数据挖掘·数据分析
百锦再4 小时前
大数据技术的主要方向及其应用详解
大数据·linux·网络·python·django·pygame
巨龙之路5 小时前
【TDengine源码阅读】#if defined(__APPLE__)
大数据·时序数据库·tdengine
好吃的肘子5 小时前
Elasticsearch架构原理
开发语言·算法·elasticsearch·架构·jenkins
巨龙之路6 小时前
【TDengine源码阅读】TAOS_DEF_ERROR_CODE(mod, code)
大数据·时序数据库·tdengine