Git 对项目版本控制 和 commitizen的使用

Git 对项目版本控制 和 commitizen的使用

真正的强大就是留着悔恨的泪,说出自己不会的地方。我敲了三年代码,不会git,我摊牌了
下面就是在GitHub上创建一个项目,并进行规范化管理

  • 在GitHub上新建一个项目,复制一下git的地址
  • 本地安装git工具,找到一个工作文件夹 右键 git bash here
  • 简单的git命令 按顺序了解命令 按顺序执行即可,
    • ls 显示当前文件夹下的列表
    • pwd 告诉用户你现在所处的位置
    • git config --global alias.ck checkout 设置命令简称
    • git config --global alias.br branch 设置命令简称
    • git clone git的地址克隆到本地
    • git br –a 查看当前的分支,注意目录
    • git co –b dev origin/dev 切换当前分支为dev(注意master和dev分支)
    • git br –a
    • 项目文件操作,开始写代码了,代码写完了
    • 项目文件需要提交的GitHub上
    • git add . 提交新文件和被修改文件 也可以用git add -A 提交所有变化
    • git commit -m "本次提交的备注消息"
    • git push origin dev //如果是master 就改成maste

commitizen的使用

  • 这个是为了让你提交更改的信息更详细
  • Npm里面执性下面的命令
    全局安装:npm install -g commitizen cz-conventional-changelog
  • Window的电脑 打开文件夹 地址栏输入C:\Users\%username%
    其实就是到用户的根目录下,新建一个没有名字只有后缀的文件.czrc
    内容是

然后就算安装好了:
等到需要提交代码的时候
git add . 提交变化
git cz 执行cz

用这个命令代替原有的 git commit

然后就是回答一系列问题
1.Select the type of change that you're committing 选择改动类型 ()

2.What is the scope of this change (e.g. component or file name)? 填写改动范围 ()

3.Write a short, imperative tense description of the change: 写一个精简的描述 ()

4.Provide a longer description of the change: (press enter to skip) 对于改动写一段长描述 ()

5.Are there any breaking changes? (y/n) 是破坏性修改吗?默认n (

)

6.Does this change affect any open issues? (y/n) 改动修复了哪个问题?默认n (

)

问题的字段说明

type
type为必填项,用于指定commit的类型,约定了feat、fix两个主要type,以及其他的type。

主要type

feat: 增加新功能
fix: 修复bug

其他type

docs: 只改动了文档相关的内容
style: 不影响代码含义的改动,例如去掉空格、改变缩进、增删分号
build: 构造工具的或者外部依赖的改动,例如webpack,npm
refactor: 代码重构
revert: 执行git revert打印的message
test: 添加测试或者修改现有测试
perf: 提高性能的改动
ci: 与CI(持续集成服务)有关的改动
chore: 不修改src或者test的其余修改,例如构建过程或辅助工具的变动
scope
scope也为必填项,用于描述改动的范围,格式为项目名/模块名,例如:node-pc/common rrd-h5/activity。如果一次commit修改多个模块,建议拆分成多次commit,以便更好追踪和维护。

subject

精简描述,即是使用git commit时提交的备注

body

详细描述,

脚注

问题回答完以后

最后
git push origin dev 或者:git push origin master 进行提交

补充:
git clone -b develop git地址 这是直接下载名字为develop的分支,git pull拉取

有时候git显示的是别人的账号
git config --global user.name "自己的账户名" // 配置自己的账户名
git config --global user.email "xxxxxx@XXX.com" // 配置自己的邮箱

// ps:删除账户名(例如删除账户名为 lisi 的账户名)
git config --global --unset user.name lisi

git config --global --unset user.name 查询当前的账号

Git和钉钉结合,换账号的时候在window 凭据管理器里面 控制面板\所有控制面板项\凭据管理器 把旧的git账号删掉就可以了

git add .
git cz
然后要git pull 拉去一下
vscode 里面判断是否有冲突
然后git push
这时候可能会报错
error: You have not concluded your merge (MERGE_HEAD exists).
hint: Please, commit your changes before merging.
fatal: Exiting because of unfinished merge.
错误:您尚未结束合并(合并头存在)。
提示:请在合并前提交更改。
致命:由于未完成合并而退出。
然后重新 git add git cz 一下

补充

clone的时候报错

$ git clone -b dev http://git地址/uc_web.git
Cloning into 'uc_web'...
remote: HTTP Basic: Access denied
fatal: Authentication failed for 'http://git地址/uc_web.git/'

在控制面板,用户凭据里面修改当前git地址的账号密码

posted @ 2020-05-22 16:01  不知而无畏  阅读(1637)  评论(2)    收藏  举报