git开发
Git 初始化
两种方式
Git 全局设置
git config --global user.name "xx"
git config --global user.email "xx@xx.com"
克隆仓库
git clone git@gitlab.xx/xx.git (可以换https)
cd SMOKE
touch README.md
git add README.md
git commit -m "add README"
git push -u origin git branch --show-current
对于本地已经存放文件的文件夹或仓库
cd SMOKE
git init
git remote add origin git@gitlab.xx/xx.git
git add .
git commit
git push -u origin git branch --show-current
git commit格式
http://www.ruanyifeng.com/blog/2016/01/commit_message_change_log.html
Git 创建评审
https://blog.csdn.net/weixin_45853716/article/details/131061634
git checkout -b dev
网页申请merge
Gitignore
https://zhuanlan.zhihu.com/p/191480312?utm_id=0
编写 .gitignore 文件的规则
根据文档,“.gitignore 文件中的每一行都指定了一个模式。”
在此上下文中,“模式”可以指一个特定的文件名,或者指文件名的某些部分结合上通配符。换句话说,example.txt 是匹配名为 example.txt 的文件的有效模式,而 ex*txt 是匹配名为 example.txt 以及 export.txt 的文件的有效模式。
以下是一些帮助你正确设置 .gitignore 文件的基本规则:
- 任何以哈希(#)开头的行都是注释。
- \ 字符可以转义特殊字符。
- / 字符表示该规则只适用于位于同一文件夹中的文件和文件夹。
- 星号(*)表示任意数量的字符(零个或更多)。
- 两个星号(**)表示任意数量的子目录。
- 一个问号(?)代替零个或一个字符。
- 一个感叹号(!)会反转特定的规则(即包括了任何被前一个模式排除的文件)。
- 空行会被忽略,所以你可以用它们来增加空间,使你的文件更容易阅读。
- 在末尾添加 / 会忽略整个目录路径。
本地与全局 .gitignore 文件的比较
有两种类型的 .gitignore 文件:
1)本地:仓库中放在 Git 仓库的根目录下,只在该工作,并且必须提交到该仓库中。
2)全局:放在你的主目录根目录下,影响你在你的机器上使用的每个仓库,不需要提交。
很多开发者在项目仓库中使用本地的 .gitignore 文件,但很少有人使用全局的 .gitignore 文件。使用全局文件最显著的优势是,你不需要提交就可以使用它,而且做一个改动会影响你所有的版本库。
Git 忽略的优势
除了确保特定的文件不被 Git 追踪之外,使用 .gitignore 文件还有其他好处。 - 通过忽略不需要的文件,它可以帮助你保持代码库的干净。
- 它可以控制代码库的大小,这在你正在做一个大项目的时候特别有用。
- 你的每一次提交、推送和拉取请求都将是干净的。
Git 很强大,但归根结底,它只是一个计算机程序而已。使用最佳实践并保持你的代码仓库稳定是一个团队的努力,其中要做到一件事就是使用 .gitignore 文件。
Git 撤销commit
https://m.php.cn/faq/506368.html
撤销本地
1.查看log
Git log
2.撤销提交
git reset HEAD~1
3.撤销提交并还原更改
git reset HEAD~1 -hard
还原修改
https://www.cnblogs.com/webSnow/p/16646565.html
bug状态
New:新的,测试过程中发现的新bug
Open:打开,对应开发人员正在处理bug
Fixed:已处理,开发人员已处理完成,待测试验证
closed:关闭,测试验证通过,bug跟踪完结
Wontfix:无法修改
later:延后修改,产品或者开发确认后期再做修改
worksforme:无法重现
duplicate:重复,同一个bug,多次提交
invalid:无效的,提交的bug无效或者不是一个bug
external:外部的
ByDesign:原设计如此
https://www.cnblogs.com/momo-nancy/p/15480838.html
Git常用
https://zhuanlan.zhihu.com/p/276376558
git status
git diff (file)
Git 分支
https://blog.csdn.net/qq_37899792/article/details/121328761
https://www.cnblogs.com/cheyunhua/p/15895905.html
https://blog.csdn.net/weixin_47513022/article/details/121266478 push
git查看本地分支
git branch
git 查看代码仓库远程分支:
git branch -r
git 查看本地和远程分支:(颜色区分,标红的是远程分支)
git branch -a
当前处于 SP3分支,切换到SP2分支:
先确保SP3分支上本地修改的内容已提交到远程,避免不必要的冲突,在sp3分支下执行:
git checkout V1.0.2.SP2
合并分支:
将sp2上修改的内容合并到sp3上:
先使用git pull确保两个分支的代码都是最新的,进行操作:
git切换到要合并的分支上:
git checkout V1.0.2.SP3
git merge合并sp2的代码:
git merge V1.0.2.SP2
可以看到,有哪些文件做了修改。
上述没用冲突,当有冲突的情况下还需要自己手动解决冲突。
提交合并的代码
git push
推到分支
git push origin infer_vis_demo
创建一个并切换到分支
Git checkout -b infer_vis_demo
创建分支
git branch -b infer_vis_demo
Git checkout infer_vis_demo
查看分支
git branch -a
master合并dev分支
git checkout master
Git merge dev
Git status
Git push origin master
删除
git rm
git rm --cached 删除暂存区工作区保留