Git版本控制学习笔记|常用命令一网打尽

为什么要学Git

刚开始写代码的时候,我的项目文件夹是这样的:

项目_最终版
项目_最终版2
项目_真最终版
项目_真最终版_改
项目_打死也不改了

每次改代码都要复制一份,特别混乱。后来开始用Git,才发现版本控制真的太重要了。

Git是一个分布式版本控制系统,可以记录每次修改,随时回到之前的版本,还能多人协作。

安装和配置

安装很简单,去官网下载安装包,一路下一步就行。

安装完成后要配置用户名和邮箱,这个会记录在每次提交里:

git config --global user.name "你的名字"
git config --global user.email "你的邮箱"

用git config --list可以查看所有配置。

基础操作

一、初始化仓库

进到项目文件夹,运行git init,就会生成一个隐藏的.git文件夹,Git就开始管理这个项目了。

二、添加文件到暂存区

新建一个文件后,要用git add告诉Git要追踪这个文件。

git add readme.md 添加单个文件
git add . 添加所有文件

三、提交到本地仓库

git add只是把文件放到暂存区,还要用git commit才能真正提交。

git commit -m "第一次提交"

-m后面是本次提交的说明,建议写清楚改了什么东西。

四、查看状态

git status 查看哪些文件被修改了
git log 查看提交历史
git log --oneline 一行显示一条提交

分支操作

分支是Git最强大的功能之一。可以理解为主干上分出旁支,在旁支上开发新功能,不影响主干的稳定。

git branch 查看所有分支,当前分支前面有个星号
git branch dev 创建dev分支
git checkout dev 切换到dev分支
git checkout -b dev 创建并切换到dev分支

开发完功能后,要把分支合并回主干:

git checkout main 先切回主干
git merge dev 把dev的代码合并过来

如果不需要这个分支了,可以删除:

git branch -d dev

远程仓库

本地仓库只能自己用,要多人协作需要把代码推到远程仓库。最常用的是GitHub、Gitee。

先关联远程仓库:

git remote add origin https://github.com/用户名/仓库名.git

推送代码:

git push -u origin main

第一次推送用-u,会把本地main分支和远程main分支关联起来,以后直接git push就行。

拉取远程更新:

git pull

这个命令会从远程拉取最新代码并合并到本地。

撤销和回退

改错了代码怎么办?不要慌,Git可以撤销。

git checkout -- 文件名 撤销工作区的修改
git reset HEAD 文件名 撤销暂存区的修改

如果要回退到之前的版本:

git reset --hard 提交ID

提交ID可以用git log查看,比如commit后面那一串字符。

git reflog 可以查看所有操作记录,即使回退错了也能找回来。

常见场景

场景一:提交完了发现漏了一个文件

git add 漏掉的文件
git commit --amend --no-edit

这个命令会把新文件合并到上一次提交,不修改提交信息。

场景二:合并时出现冲突

两个人改了同一个文件的同一行,Git不知道该用谁的,就会报冲突。

打开冲突文件,会看到这样的标记:

<<<<<<< HEAD
你的代码
=======
别人的代码

dev

手动改成想要的样子,删掉那些标记,然后git add和git commit。

场景三:暂时不想提交但需要切换分支

git stash 暂存当前修改
git stash pop 恢复暂存的修改

常用命令速查表

 
 
命令 说明
git init 初始化仓库
git clone 地址 克隆远程仓库
git add . 添加所有文件
git commit -m "说明" 提交
git push 推送到远程
git pull 拉取远程更新
git branch 查看分支
git checkout 分支名 切换分支
git merge 分支名 合并分支
git log 查看提交历史
git status 查看状态

总结

Git的命令看起来很多,但日常用的就那么几个。多用几次就熟练了。

建议在GitHub上开一个仓库,把学习笔记放上去,既能练习Git又能备份,一举两得。

共 1 页 1 条数据