基带处理器项目Git使用

项目代码仓库概览

问题速查7.4 我遇到的问题及解决方法


重要注意事项

  1. 在开发功能之前必须先拉取最新分支。
git pull origin main
  1. 只能在自己命名的分支进行开发,禁止在main分支开发。
# 确认当前分支:
git branch 
# 或者查看log
git log
  1. 提交分支只能提交自己命名的分支。
# 推送当前分支到远程仓库的`ppeng`分支:
git push origin ppeng
  1. 提交分支之后应该告诉root用户审计并合并工作。
  2. 项目开发禁止使用notepad++

1.1 仓库地址与克隆方式

# 打开本地终端,输入:  
git clone 'user_name'@10.147.19.26:/repo/BandPJ

eg:ppeng的仓库地址:git clone [email protected]:/repo/BandPJ
回车后,项目文件夹就会出现在你电脑里。

1.2 核心分支作用

我们把代码比作一本书,分支就是不同的“草稿”:

1.3 保护规则一览

保护规则就像“家长管孩子”,防止乱动重要东西:

“别直接在 main 分支上改代码,先创建自己的user_name分支再动手。”

开发环境准备

2.1 安装 Git 与配置身份

略,见Keeps-up

2.2 生成 SSH 密钥并绑定

2.3 首次克隆项目代码

日常开发工作流

3.1 创建个人 feature 分支

git pull origin main
git checkout -b 'your_name'
git branch
# 类似输出  
* ppeng

成功后你会看到命令行前面括号里变成刚起的分支名,就可以放心写代码了。

3.2 提交并推送代码

git add *                        ← 把改动放进“背包”
git commit -m "添加相关的修改说明"  ← 给背包贴标签

3.3 发起合并请求(选看

分支与合并策略

4.1 常用分支类型

4.2 合并方式选择(选看

提交规范与注释模板(重要

5.1 提交信息格式

一句话模板:<用户>: 做了什么

eg:ppeng: 添加了xx文档lucky:修改了xx部分逻辑

代码冲突预防与解决

6.1 预防:及时拉取远程变更

每天开工先跑:

git checkout main
git pull --rebase origin main

6.2 解决:使用 IDE 合并工具(重要

本部分是解决冲突的重要内容,有什么不懂地方直接问AI,并选择性采用AI的建议。
尽量改本地的文件,不要强行进行危险操作。

  1. git pullgit merge 提示 CONFLICT 时,别慌。
  2. 用 VS Code 打开冲突文件,会看到“<<<<<<<” 分隔线。
  3. 点击“采用当前更改 | 采用传入更改 | 保留双方”,保存即可。
  4. 解决完再次 git add .git commitgit push

6.3 回退:撤销错误合并(重要

本部分关于撤销误操作,在此只做简单介绍,建议直接问AI。
如果不小心把错的代码合进 main,可以:
git revert <合并的main分支commit号>
系统会生成一次“反操作”的新提交,原代码不会被删掉,只是“抵消”改动,最安全。

附录

7.1 常用命令速查

git clone <地址>               # 第一次把项目搬下来
git checkout -b feature/xxx   # 新建并切换分支
git add .                     # 把改动放进暂存区
git commit -m "feat: 描述"     # 提交
git push -u origin 分支名      # 第一次推送
git pull --rebase origin dev  # 保持最新
git log --oneline -10         # 看最近10次提交
git revert <commit>           # 安全回滚

7.2 常见问题 FAQ

Q1 误删了分支能找回吗?
A:执行 git reflog 找到最后一次提交的哈希,再 git checkout -b 分支名 <哈希> 即可。
Q2: 我在 git status 里看到warning: in the working copy of 'vp_src/logic_unit.sv', LF will be replaced by CRLF the next time Git touches it 这是什么意思?要不要处理?
A:

  1. 是什么含义
    该文件当前以 Unix 风格 LF(\n)做行尾,但 Git 检测到你在 Windows 且 core.autocrlf=true,于是提示“下次 add/checkout 时会自动转成 Windows 风格的 CRLF(\r\n)”。
  2. 有什么影响
    仅提示,不会损坏代码;若仓库跨平台(Linux CI、Mac 同事等)可能产生“整行 diff”噪音。
  3. 禁用自动替换LF为CRLF(可选)
    git config --global core.autocrlf false # 全局配置

7.3 内部支持渠道

7.4 我遇到的问题及解决方法