nitroge / memories

日常学习累积的点点滴滴滴滴点点
7 stars 0 forks source link

git使用规范 #22

Open nitroge opened 2 years ago

nitroge commented 2 years ago

git使用规范

开发规范

原则:保持特性分支干净整洁,不被污染(无其他项目代码)

Step1:基于master(稳定分支)切特性分支

Feature Name:feature_1.0.0

Step2: 基于特性分支切本地分支(命名与特性分支一致)

git checkout -b feature_1.0.0 origin/feature_1.0.0

Step3: 本地代码推送至个人远程分支(命名 “your name_特性分支名“)

git push origin feature_1.0.0:xg_feature_1.0.0

// 同步特性分支后远程未发起合并请求(个人分支->特性分支),会push失败,提示分支落后,此时使用强推即可
git push -f origin feature_1.0.0:xg_feature_1.0.0 

Step4:多人协作开发时,同步特性分支代码

git pull --rebase origin feature_1.0.0

// 如有冲突,本地解决完后再push,使用rebase不会产生新的commit记录
git add .
git rebase --continue

常见问题

  1. 当前分支已经有改动,但要切换至其他分支修复某个紧急bug,而你又不想在当前分支生成新的commit记录时咋办?
    
    // 储存当前分支改动
    git add .
    git stash

// 恢复当前分支改动 git stash pop

> 使用git stash 后你就可以放心的checkout到别的分支去修复bug啦~
2. 回退到某个commit
```javascript
git reflog
git reset --hard <commit的hash值>
  1. git重置认证凭证(https://blog.csdn.net/qq_35542218/article/details/100891452
    // 执行完后重新输入账号密码即可
    git config --system --unset credential.helper
  2. git生成ssh密钥(https://blog.csdn.net/weixin_44291453/article/details/106763561
    
    // 检查用户名邮箱是否配置
    git config --global --list

// 配置用户名邮箱 git config --global user.name "your username" git config --global user.email "your email"

// 检查是否存在.ssh文件或创建.ssh文件 ~/.ssh 或者 ssh-keygen -t rsa -C "your email"