# git_usage
**Repository Path**: ren3016/git_usage
## Basic Information
- **Project Name**: git_usage
- **Description**: git 使用方式
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2025-03-10
- **Last Updated**: 2025-03-10
## Categories & Tags
**Categories**: Uncategorized
**Tags**: Git
## README
# 使用 Git 推送代码到远程仓库
**在使用 Git 推送代码到远程仓库(如 GitHub、Gitee 等)时,必须提前在对应的平台上创建好远程仓库。**
# 一、 在 Gitee 上创建仓库
1. 登录 Gitee 账号。
2. 点击右上角 ✚ → 新建仓库。
3. 填写仓库名称、描述(可选)、公开性(公开/私有)等信息。
4. 勾选 "初始化这个仓库"(可选):会自动生成一个 README.md 文件。(或创建空仓库(不勾选 "初始化仓库"))。
5. 点击 创建,完成仓库创建。
# 二、创建 git 仓库:
```
git init
git add . (或 git add README.md)
git commit -m "first commit"
git remote add origin https://gitee.com/ren3016/code.git
git push -u origin "master"
```
# 二、已有仓库
```
git remote add origin https://gitee.com/ren3016/code.git
git push -u origin "master"
```
## 其它:
### 本地有文件,gitee有文件,先把gitee上pull下来,再push所有上去
#### 方法 1:强制合并(推荐) 通过 --allow-unrelated-histories 参数强制合并两个无关历史:
```
git pull origin master --allow-unrelated-histories
```
#### 或分步操作:
#先拉取远程代码(不合并)
```
git fetch origin
```
#强制合并远程 master 分支到本地当前分支
```
git merge origin/master --allow-unrelated-histories
```
### 删除 Git 中名为 origin 的(关联)远程仓库
```
git remote remove origin
```
### ★ 本地 Git 关联远程仓库
假设你已经有一个本地仓库,且仓库 URL 为 https://gitee.com/ren3016/face_cropping.git
#### 关联远程仓库(替换为你的仓库 URL)
```
git remote add origin https://gitee.com/ren3016/face_cropping.git
```
#### 验证关联结果
```
git remote -v
```
#### 输出应为:origin https://gitee.com/ren3016/face_cropping.git (fetch)
#### origin https://gitee.com/ren3016/face_cropping.git (push)
### ★ 推送代码到远程仓库
#### 第一次推送时需要指定分支(默认是 master/main)
#推送本地 master 分支到远程仓库的 master 分支,并自动关联跟踪关系
```
git push --set-upstream origin master
```
#等效简写(需 Git 2.10+)
```
git push -u origin master
```
#### 简写形式(后续可直接 push)
```
git push
```
• -u:将本地分支与远程分支关联,后续无需重复指定。
### 手动配置上游分支
步骤 1:绑定本地分支与远程分支
```
git branch --set-upstream-to=origin/master master
```
步骤 2:执行推送
```
git push origin master
```
方法 3:全局配置自动跟踪(推荐长期使用)
```
git config --global push.autoSetupRemote true
```
#### 强制覆盖远程(谨慎操作):如果需要覆盖远程分支,请确保你有权限且了解后果:
```
git push -f origin master
```
### ★ 如果未提前创建仓库会怎样?
如果你尝试推送到一个不存在的仓库,会报错:
fatal: repository 'https://gitee.com/ren3016/non-existent-repo.git/' not found
此时需返回第一步:创建仓库。
### ★ 特殊情况:空仓库的推送
如果远程仓库是空的(未初始化),且你本地仓库已有代码:
1. 在 Gitee 创建空仓库(不勾选 "初始化仓库")。
2. 本地仓库关联后,直接推送即可。
### ★ 补充说明
1. 克隆现有仓库(无需提前创建本地仓库)
如果远程仓库已存在,你可以直接克隆:
```
git clone https://gitee.com/ren3016/face_cropping.git
```
2. 私有仓库的权限
• 如果是私有仓库,需在 Gitee 中绑定 SSH 密钥或设置账号密码,否则推送时会要求输入凭证。
3. 检查仓库是否存在
在浏览器中访问仓库 URL(如 https://gitee.com/ren3016/face_cropping ),确认是否已成功创建。
### ★ 总结
• 必须提前创建远程仓库,否则推送失败。
• 创建仓库后,通过 git remote add 关联本地仓库,再执行 git push。
• 如果遇到仓库不存在的错误,请检查 URL 是否正确或重新创建仓库。