Git常用命令

目录

配置个人信息

配置远程仓库

入门命令

克隆现有的Git仓库

提交和推送

修正提交

仅追加文件

追加文件并编辑提交描述信息

撤销提交(可挽回)

撤销提交(不可挽回)

分支重置

主分支重命名


配置个人信息

Git 在提交代码时会记录作者信息,这些信息可以通过以下命令进行配置。

python 复制代码
git config --global user.name "[姓名]"

git config --global user.email "[邮箱]"

配置远程仓库

通过该命令可以将本地仓库与远程仓库建立关联才可以推送到远程仓库分支。

python 复制代码
git remote -v  # 查看当前项目的所有远程仓库信息

git remote add origin <remote_url>  # 添加一个名为origin的远程仓库

入门命令

创建一个Git仓库,需要在项目根目录

python 复制代码
git init

克隆现有的Git仓库

拿到开源项目地址可以通过该命令克隆到本地。

python 复制代码
git clone '项目地址'

提交和推送

通常写完代码后会把最新更改添加到git暂存区然后提交本次更改,最后推送到远程分支。

将当前目录及其子目录下所有修改过的文件添加到暂存区

python 复制代码
git add .

提交暂存区的所有内容到版本库

python 复制代码
git commit -m "对本次提交的修改内容描述"

修正提交

仅追加文件

将新修改添加到上次提交(当你只需要添加新的文件到上一次的提交,或者不需要改变提交信息内容时使用,--no-edit选项可以避免打开编辑器修改提交信息)

python 复制代码
git commit --amend --no-edit

追加文件并编辑提交描述信息

当你有遗漏文件且提交描述信息写错了,需要添加遗漏文件并编辑提交的描述信息时使用,

运行该命令Git 会打开文本编辑器,让你编辑最新的提交信息或者添加未包含的文件。

python 复制代码
git commit --amend

撤销提交(可挽回)

你开发了一个小功能并提交了(称为提交 A)

然后你又开发了另一个小功能并提交了(称为提交 B)
如果后来发现B有问题,但是问题很小,稍微修改就可以解决(可挽回)就需要撤销最近的提交 B,并保留修改内容。

撤消最近的提交并保留更改

(~1代表撤销前一次提交)

python 复制代码
git reset HEAD~1

如果后来发现A有问题,A的问题也是小问题(可挽回),提交A位于倒数第二次提交就需要撤销前两次提交提交 A和提交 B,并保留修改内容。

(~2代表撤销前2次提交 )同理(~n代表撤销前n次提交)

python 复制代码
git reset HEAD~2

撤销提交(不可挽回)

还是这个场景

你开发了一个小功能并提交了(称为提交 A)

然后你又开发了另一个小功能并提交了(称为提交 B)
如果后来发现A有问题,A的问题非常大不是简单修改解决的了的(不可挽回),提交A位于倒数第二次提交就需要撤销前两次提交提交 A和提交 B,直接丢弃修改内容。

撤消最近2次的提交并丢弃更改(--hard 选项:这会丢弃所有未提交的更改,包括工作区中的修改和暂存区的更改)

python 复制代码
git reset HEAD~2 --hard

分支重置

当你的本地分支落后于远程分支、

或者你的本地分支被人为恶意破坏乱搞、

再或者你希望完全放弃这些修改并重置为远程分支的状态时,

可以使用这个命令可以获取远程仓库 origin 上所有分支的最新提交,但不会自动合并到你的当前分支。

将分支重置为远程状态

python 复制代码
git fetch origin 
git reset --hard origin/'分支名称'

主分支重命名

初始化git仓库后主分支默认名称为master,我们可能要进行修改。

将本地master分支重命名为main

python 复制代码
git branch -m master main
相关推荐
Kimnol5 小时前
我的第一次 Git 贡献:从 fork 到合并 PR #3130
git
鬼手点金11 小时前
消息的四种角色
java·前端·人工智能·git·深度学习
齐 飞1 天前
idea中git误操作撤回git reset --hard ‘HEAD@{1}‘
java·git·intellij-idea
长成一棵参天树1 天前
React15 vs React16 核心区别
git·vscode
驭渊的小故事1 天前
Git 基础操作与对象观察
git
Hvitur2 天前
Gitea 版本控制服务端【Red Hat 离线安装】
git
flytalei2 天前
逐浪笔记 GitOps 实战:Jenkins 构建、Argo CD 同步与 Git 回滚
笔记·git·jenkins
熊出没2 天前
CommitLoom 使用教程:在 IntelliJ IDEA 中自动生成 Git 提交信息
java·git·intellij-idea
IOT那些事儿2 天前
Git报错:Could not get HEAD hash
git·hash·head
杜哥无敌2 天前
Git Bash + acme.sh 实现 SSL 证书自动续签(完整指南)
git·bash·ssl