项目 | 内容 |
---|---|
这个作业属于哪个课程 | 2023年北航敏捷软件工程社区-CSDN社区云 |
这个作业的要求在哪里 | 团队项目-代码管理准备-CSDN社区 |
我在这个课程的目标是 | 了解并实践软件开发流程 |
这个作业在哪个具体方面帮助我实现目标 | 实践代码管理 |
实践
仓库地址
- 团队的代码仓库地址:https://gitcode.net/qq_42999076/buaase2023-teamversioncontrol
- 团队的代码仓库地址:https://gitcode.net/m0_51164713/demo
说明
-
考虑连接因素选择gitcode,本仓库仅完成本次作业
-
实践中出现的输入错误按照分支规范进行修正,并在pull request中关联相应issue
-
hotfix3实现代码:
git clone --mirror git@gitcode.net:qq_42999076/buaase2023-teamversioncontrol.git java -jar bfg.jar --delete-files --no-blob-protection SUPER-SENSITIVE-DATA.txt buaase2023-teamversioncontrol.git/ cd buaase2023-teamversioncontrol.git/ git reflog expire --expire=now --all && git gc --prune=now --aggressive git push --force git@gitcode.net:m0_51164713/demo.git --all
心得
-
在最初尝试中,分支名以及commit信息不统一
解决方法:及时通过文档来制定统一的规范,确保小组成员彼此能够顺利高效地理解彼此的修改与提交。 -
git merge
采用分支合并的方式,保留原有的提交历史,但会使分支历史记录会变得比较杂乱。git rebase
相当于将修改在分支重演一遍,使得提交历史记录更加线性和清晰,但是可能会丢失一部分原有的提交信息。在多人协作的场景中,
git rebase
会改变提交历史记录,可能造成分支逻辑上的混乱,相较而言还是git merge
较为安全可靠。