git 相关操作

1.正常提交流程 

  1. git add .

  2. git status // 查看是否生效

  3. git commit -m {commit_message}

  4. git push

3. clone项目基本流程

  1. git clone …
  2. cd <project_name>
  3. git branch // 查看当前分支
  4. git checkout -b dev origin/dev // 拉取远程dev分支到本地
  5. git checkout -b fix/css-style // 本地新建分支 fix/css-style
  6. git add .
  7. git commit -m ‘commit message 编写规范’
  8. git push --set-upstream origin fix/css-style  // --set-upstream 等价-u 推送并追踪远程分支

4. 撤销 

       1.撤销git add

        git reset HEAD 撤销全部上一次的提交

        git reset HEAD xxx/xxx/xxx.js  撤销某个文件

       2.撤销git commit

        git reset --soft HEAD~1            撤销commit,不撤销git add

        git reset --mixed HEAD~1        撤销commit,撤销git add

        git reset --hard HEAD~1           撤销commit,撤销git add,还原改动的代码

       3.撤销 git push

        git log    执行  git log查看日志,获取需要回退的版本号 

        执行 git reset –-soft <版本号>  重置至指定版本的提交,达到撤销提交的目的   

       4.撤销git pull

        git reflog

        git reset --hard   <COMMIT_ID> 或者 git reset --hard HEAD@{2} 

        git reset –-soft 与 git reset –-hard ,区别是:

       前者表示只是改变了HEAD的指向,本地代码不会变化,我们使用git status依然可以看到,同时也可以git commit提交。后者直接回改变本地源码,不仅仅指向变化了,代码也回到了那个版本时的代码。

5.git stash 相关

 1.git stash  执行存储

 2.git stash list   查看存储列表

 3.git stash show  显示改动  默认显示第一个,比如显示第二个 git stash show stash@{1}

 4.git stash apply  应用某个存储,但不会把存储从存储列表中删除,默认使用第一个存储,即stash@{0}, 若想应用第二个: git stash apply stash@{1}

 5.git stash pop  命令恢复之前缓存的工作目录,将缓存堆栈中的对应stash删除

 6.git stash drop stash@{$num} :丢弃stash@{$num}存储,从列表中删除这个存储

 7.git stash clear :删除所有缓存的stash

6.git上传到远程仓库

 1. git remote -v 查看项目关联远程地址

 2. git remote rm origin 删除远程地址

3. git remote add origin <url> 配置远程仓库地址

7.补充

  1. 撤回本地未提交的 merge,可以通过执行 git reset --hard HEAD~1 来往前一步一步回撤,详情参见:Undo a Git merge that hasn't been pushed yet,如果要变更远程已提交的内容,可以在执行了上述操作后,在推送时,强制指定推送的远程分支,比如:git push -f origin {remote_branch_name}

  2. 清除不需要版本管理的文件:一般发生在 .gitignore 文件没有声明排除此类文件,并且工程师已经提交了此类文件,此时可以按照以下步骤清除:

  1. 在 .gitignore 里面添加排除规则(开源社区提供的针对不同项目的通用 .gitignore 文件:https://github.com/github/gitignore

  2. 如果仅针对特定的某一文件,执行命令:git rm --cached {filename}

  3. 如果针对所有文件,执行命令:git rm -r --cached .

  4. 然后执行正常的提交流程 add commit push

Git Commit  每次改动代码前,想好这次需要改动的scope,不要一次改动涉及太多内容,保持git commit log的整洁

可以探讨下 Commit 的类型,有助于自动化 CHANGELOG 生成

  • feat:新功能

  • fixed:Bug 修复

  • docs:文档更新

  • style:代码格式,标点符号更新

  • refactor:代码重构

  • pref:性能优化

  • test:测试更新

  • build:构建系统或者包依赖更新

  • ci:CI 配置,脚本文件等更新

  • chore:非 src 或者静态资源等更新

  • revert:commit 回退

更多commit 规范请参考Angular提交信息规范 - Git Guide 

更多git 内容 查看 Git教程 - 廖雪峰的官方网站

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值