Git

常用

初始化

# 初始化仓库
git init
# 选择文件
git add README.md
# 提交暂存
git commit -m "first commit"
# 
git branch -M main
# 关联远程仓库
git remote add origin https://github.com/code-shuai/***.git
# 提交到远程仓库
git push -u origin main

远程仓库

// 关联(修改)
git remote set-url origin <url>

// 关联(新增)
git remote add (标识名(origin))  (远程地址)

// 查看地址
git remote -v
// 查看地址
git remote show origin

git fetch 更新远程不合并

git fetch是将远程主机的最新内容拉到本地,用户在检查了以后决定是否合并到工作本机分支中。

git pull 则是将远程主机的最新内容拉下来后直接合并,即:git pull = git fetch + git merge,这样可能会产生冲突,需要手动解决。

git reset 还原本地提交

通过使用 git reset 命令,我们可以取消最近的本地提交并将代码回退到上一个提交状态。有三个选项可供我们选择:”mixed”、”soft” 和 “hard”。

  • 使用 git reset --mixed HEAD~1 命令可以取消最近的提交并将代码回退到上一个提交状态。在这之后,已取消的提交将不再出现在 Git 提交历史中,文件的变动将会保留在工作区,但未被添加到暂存区。
  • 使用 git reset --soft HEAD~1 命令可以取消最近的提交并将代码回退到上一个提交状态。在这之后,已取消的提交将不再出现在 Git 提交历史中,文件的变动将会保留在暂存区,但未被提交。
  • 使用 git reset --hard HEAD~1 命令可以彻底取消最近的提交并将代码回退到上一个提交状态。在这之后,已取消的提交将不再出现在 Git 提交历史中,文件的变动也将被丢弃,回到了上一个提交的版本状态。

常见问题解决

fatal: unable to access

// 取消http代理
git config --global --unset http.proxy
// 取消https代理 
git config --global --unset https.proxy

error: RPC failed; HTTP 413 curl 22 The requested URL returned error: 413

// git push 报错
Enumerating objects: 25633, done.
Counting objects: 100% (25633/25633), done.
Delta compression using up to 12 threads
Compressing objects: 100% (7776/7776), done.
Writing objects: 100% (25633/25633), 118.34 MiB | 371.73 MiB/s, done.
Total 25633 (delta 17046), reused 25633 (delta 17046), pack-reused 0 (from 0)
error: RPC failed; HTTP 413 curl 22 The requested URL returned error: 413
send-pack: unexpected disconnect while reading sideband packet
fatal: the remote end hung up unexpectedly
Everything up-to-date

// nginx 报错
[error] 52#52: *128619 client intended to send too large body: 123786492 bytes

原因:OpenResty 配置文件

// 最大上传文件 默认值过小
client_max_body_size 50m; 
// 修改后
client_max_body_size 500m; 

client_max_body_size

一、基础操作

### 1. 新建仓库
git init

### 2. 增加临时文件
git add .

### 3. 提交临时文件
git commit -m ""

### 4. 关联远程仓库
git remote add (标识名(origin))  (远程地址)

### 5. 上传远程仓库
git push (标识名)(本地)

添加远程仓库


	**方法1.修改命令**
	git remote set-url origin <url>
‍
	**方法2.先删后加**
	git remote rm origin
	git remote add origin [url]
‍
	**方法3.直接修改config文件**

	// 修改名称 origin 为 gitea
	[remote "origin"] -> [remote "gitea"]
	
	// 修改链接
	[remote "gitea"]
		url = https://gitea.shaun.cool/shaun/demo.git
		fetch = +refs/heads/*:refs/remotes/origon/*

直接修改config文件

Git国内镜像地址

链接修改地址

github.com.cnpmjs.org
hub.fastgit.org(推荐)
gitclone.com

原地址

git clone https://github.com/docker/compose.git

改为

git clone https://github.com.cnpmjs.org/docker/compose.git 

或者

git clone https://hub.fastgit.org/docker/compose.git 

或者

git clone https://gitclone.com/github.com/docker/compose.git

免替换法

vim /etc/hosts

 192.30.253.112 github.com
  151.101.44.249 github.global.ssl.fastly.net

1、使用命令【service network-manager restart】来重启网络服务;2、使用命令【sudo ifdown -a && sudo ifup -a】来重启网络服务。
git config --global url."https://hub.fastgit.org".insteadOf https://github.com 

直接编辑 ~/.gitconfig 添加:

[url "https://hub.fastgit.org/"]
	insteadOf = https://github.com/ 

查看git配置信息

git config --global --list 

取消设置

git config --global --unset url."https://hub.fastgit.org.insteadof"

二、多人开发

1. 将远程仓库复制到本地,并自动形成本地仓库(仅用于第一次,其他时候使用pull)

git clone (远程地址)

2. 将本地仓库内容上传到远程仓库

git push (标识名)(本地)

3. 从远程仓库下载内容到本地仓库

git pull (标识名) (本地)
备注(需要基本操作中的命令)

三、分支

1. 查看当前仓库分支

git branch
仓库中默认只有master 分支
执行 git commit 时,默认是在master 分支上保存版本

2. 创建分支

git branch (分支名称)
master 分支 不要轻易使用(较为稳定的版本存于master)
开发时 创建开发分支

3. 切换分支

git checkout (分支名)

4. 合并分支

git merge (分支名)
从填写分支合并至当前分支

5. 合并分支(2)

git rebase (分支名)
将当前分支合并至填写分支

git

四、config

1. 系统 config

git config --system --list

2. 用户 config

git config --global  --list

3. 仓库 config

git config --local  --list

git config

# 查看所有配置信息
git config --list

# 查看系统级配置信息
git config --system --list

# 查看用户级(全局)配置信息
git config --global --list

# 查看仓库级配置信息
git config --local --list

proxy



git config --global http.proxy http://127.0.0.1:1080
git config --global http.proxy https://127.0.0.1:1080