Files
gerrit/SSH配置成功-继续推送.md
2025-12-22 17:12:39 +08:00

151 lines
2.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# SSH 配置成功 - 继续推送代码
## ✅ SSH 连接已成功
您已经成功连接到 Gerrit现在可以配置 Git 并推送代码了。
## 下一步操作
### 在 Git Bash 中执行:
```bash
# 1. 确保在项目目录
cd /d/zhini/zhini_im
# 2. 删除旧的远程仓库(如果存在)
git remote remove gerrit 2>/dev/null || true
# 3. 添加 SSH 远程仓库
git remote add gerrit ssh://admin@101.43.95.130:29418/zhini_im
# 4. 验证远程仓库配置
git remote -v
# 5. 查看当前分支
git branch
# 6. 提交所有更改(如果有未提交的)
git add .
git commit -m "Update code before push to Gerrit"
# 7. 推送代码到 Gerrit
# 方式 A直接推送到主分支首次上传
git push gerrit master:refs/heads/master
# 或方式 B推送到评审队列推荐用于后续更新
git push gerrit master:refs/for/master
```
## 推送方式说明
### 直接推送(首次上传)
```bash
git push gerrit master:refs/heads/master
```
- ✅ 直接更新主分支
- ✅ 适用于首次上传
- ❌ 跳过代码评审流程
### 推送到评审队列(推荐)
```bash
git push gerrit master:refs/for/master
```
- ✅ 进入代码评审流程
- ✅ 需要评审后才能合并
- ✅ 符合 Gerrit 工作流程
- 推荐用于:日常开发、团队协作
## 如果当前分支不是 master
如果您的当前分支是 `rjb_dev` 或其他分支:
```bash
# 查看当前分支
git branch
# 推送当前分支到 master
git push gerrit rjb_dev:refs/heads/master
# 或推送到评审队列
git push gerrit rjb_dev:refs/for/master
```
## 验证推送
推送成功后:
1. **访问项目页面**
```
http://101.43.95.130:8080/#/admin/projects/zhini_im
```
2. **查看变更**
```
http://101.43.95.130:8080/#/q/project:zhini_im
```
3. **浏览代码**
```
http://101.43.95.130:8080/#/admin/projects/zhini_im,general
```
## 常见问题
### Q: 推送时提示 "remote rejected"
**A:** 可能的原因:
1. 项目不存在 → 先在 Gerrit 创建项目
2. 没有推送权限 → 检查项目权限配置
3. 分支保护 → 使用 `refs/for/master` 推送到评审队列
### Q: 如何查看远程仓库?
```bash
git remote -v
```
应该显示:
```
gerrit ssh://admin@101.43.95.130:29418/zhini_im (fetch)
gerrit ssh://admin@101.43.95.130:29418/zhini_im (push)
```
### Q: 如何测试 SSH 连接?
```bash
# 测试连接并查看 Gerrit 版本
ssh -p 29418 admin@101.43.95.130 gerrit version
# 应该显示gerrit version 3.9.0
```
## 后续操作
### 日常开发流程
```bash
# 1. 修改代码
# 2. 提交更改
git add .
git commit -m "描述您的更改"
# 3. 推送到评审队列
git push gerrit master:refs/for/master
# 4. 在 Gerrit Web 界面进行评审
# 5. 评审通过后,代码会自动合并
```
### 克隆项目(其他团队成员)
```bash
# 使用 SSH
git clone ssh://admin@101.43.95.130:29418/zhini_im
# 或使用 HTTP
git clone http://101.43.95.130:8080/zhini_im
```