git 在项目中的实际使用

常用命令手册

操作 指令 说明
初始化仓库 git init 使用其它指令的前提
添加文件到缓存区 git add <file> 可反复多次使用
将缓存文件提交本地仓库 git commit -m <message> /
查看本地分支 git branch /
查看所有分支 git branch -a 包括本地/远程分支
创建分支 git branch <name> /
切换分支 git checkout <name> 别名 git switch <name>
创建+切换分支 git checkout -b <name> 别名 git switch -c <name>
合并某分支到当前分支 git merge <name> 需要先切换到当前分支
删除分支 git branch -d <name> /
强行删除分支 git branch -D <name> 分支未合并过时,不能普通删除
前往某次提交版本 git reset --hard <commit_id> /
查看提交历史 git log 方便回到过去版本
查看命令历史 git reflog 方便前往未来版本
丢弃工作区修改 git checkout – <file> 尚未添加到缓存
丢弃缓存区修改 git reset HEAD <file> 需要再执行上一步
从版本库恢复被删除文件 git checkout – <file> 需要版本库存在该文件
从版本库恢复被修改文件 git checkout – <file> 需要版本库存在该文件
从版本库删除文件 git rm <file> 需要提交操作
关联远程库 git remote add origin <url.git> origin 是远程库的习惯命名
推送当前分支到远程并关联 git push -u origin <name> 关联当前、远程分支,后续推送/拉取可以简化命令
/ 如远程分支不存在,将新建远程分支
将当前分支推送(更新)到远程 git push origin <name> 分支通常重名
将当前分支推送(更新)到远程 git push origin 需要关联当前、远程分支
将当前分支推送(更新)到远程 git push 还需要当前分支只有一个远程分支
从远程库克隆 git clone <url.git> /
查看远程库信息 git remote -v /
拉取远程的某分支到本地 git checkout -b <branch> origin/<branch> 应该不需要下一步
关联本地、远程分支 git branch --set-upstream-to <branch> origin/<branch> /
从远程获取最新版本到本地并合并 git pull 远程分支比本地更新时使用。需要先关联
从远程获取最新版本到本地 git fetch 能够获取到远程新分支信息
合并分支 git merge /

常用操作

添加修改到本地仓库

1. 查看状态

git status

2. 添加所有修改文件到暂存区

git add .

3. 提交到本地仓库

git commit -m 'xxx'

4. 查看状态

git status

添加修改到远程仓库

git push

更改关联的远程库

针对报错 fatal: remote origin already exists.

1. 删除远程 Git 仓库

git remote rm origin

2. 添加远程 Git 仓库

git remote add origin https://github.com/SpringLoach/manager-copy.git

本地关联并推送到远程

初始化本地仓库,忽略文件

git init 

创建 .gitignore 文件,忽略 node_modules

提交到本地仓库

git add .
git commit -m "renew"

在github新建仓库

将本地仓库关联推送到远程

/* 关联远程库 */  
git remote add origin https://github.com/用户名/仓库名.git

/* 强制重命名分支 */  
git branch -M main

/* 推送当前分支到远程并关联 */ 
git push -u origin main

克隆修改后推送

第一步: git clone xxx // 下载远程仓库至本地

第二步: git status // 查看当前状态

第三步:git add . 或者 git add xxx // 提交文件至本地缓存区

第四步:git commit -m “提交代码” // 提交文件至本地仓库

第五步: git pull <远程主机名> <远程分支名> // 取回远程主机某个分支的更新,再与本地的指定分支合并。

第六步:git push <远程主机名> <远程分支名> // 把当前提交到git本地仓库的代码推送到远程主机的某个远程分之上

后续推送:可以省略远程主机名和远程分支名,git push 即可。


提交操作者信息

添加 --global 参数,表示机器上所有的Git仓库都会使用这个配置。

$ git config --global user.name "Your Name"
$ git config --global user.email "[email protected]"  

验证操作者信息

$ git config user.name 
$ git config user.email 

协_获取新远程库某分支

顺序 步骤 命令
从远程库克隆,默认只拉取主分支 main git clone <url.git>
拉取远程的某分支到本地 git checkout -b <branch> origin/<branch>
查看分支、正常操作

远程库克隆报错

由于网络不稳定,连接超时导致,可再次尝试克隆命令。

fatal: unable to access 'https://github.com/SpringLoach/test.git/': OpenSSL SSL_read: Connection was reset, errno 10054

协_解决冲突

顺序 步骤 命令
修改后,尝试正常推送 git push
提示远程的提交领先于本地,这时可以使用 git pull
会将冲突文件的冲突代码部分标出 /
手动修改,解决冲突 /
正常操作、再次推送 /

更多情景

git pull 报错

需要指定合并策略

fatal: Need to specify how to reconcile divergent branches

指定为默认的合并策略:

git config pull.rebase false

git commit 报错

找不到预处理文件

pre-commit hook failed

忽略验证

git commit -m "message" --no-verify

有时候会要求必须为双引号

git 还原

提交错了分支,然后需要马上把最新修改抛弃:

如果使用的是 HbuilderX: 显示日志,重置到修改前的版本,然后重新提交push即可。

相关软件

TortoiseGit

HbuilderX 进行 git 操作的前置依赖,安装教程可参考博客

补充的话

仓库,还提供了许多前端常见需求及实现的归纳整理,欢迎客官看看~

如果这篇笔记能够帮助到你,请帮忙在 github 上点亮 star,感谢!

猜你喜欢

转载自blog.csdn.net/qq_61270298/article/details/130049296