Git相关使用记录

工作中用到git比较多,对一些比较常规对操作做一个记录。

分支相关

  • 若仓库里新建了分支,本地更新分支:git fetch
  • 切换分支/新建分支:git checkout xx/git checkout -b xxxx
  • 在现有分支上新建分支,是从现有分支延伸出去的分支,所以若多人开发同一项目,可以在切换到仓库的开发分支后在本地新切一个分支,避免在仓库分支上开发与别人造成冲突。

  • 推送本地分支到远端:git push -u origin 本地分支名
  • 若直接在远端分支上改,但是远端分支有更新,为了在pull远端代码的时候保留本地已修改代码,可进行以下操作:

      1、git stash,保留本地代码

      2、git pull,拉取远端代码 

      3、git stash pop,恢复本地代码跟远端代码合并

 

提交相关

  • 若直接在仓库的分支开发提交,则直接提交即可:git add .     git commit -m "提交内容"     git push
  • 若多人共同开发,为避免提交冲突,会在本地新建分支进行单独开发,在这个情况下提交的话有多种方法,我仅记录我自己常用操作,比较方便易懂:

      1、在本地分支a提交,见上一条操作,不需要git push,同时git log查询提交的序号,记住前四位。

      2、切换到仓库的开发分支,git pull,git cherry-pick xxxx(第一个步骤查询到的前四位序号)。

      3、提交:git push。 

      4、若开发还未完成需要继续开发:删除本地分支a,从仓库开发分支新建本地分支。

      5、这个流程需要一个删除新建分支的步骤,但是相比较于其他流程而言我个人比较倾向于这个。

  • 多次commit提交,为了提交过程干净清爽需要合并,为了安全起见可以在本地分支先合并,再由仓库开发分支cherry-pick过来,具体流程:

      1、git rebase -i HEAD~3(合并最近3条)/git rebase -i [startpoint] [endpoint] 前开后闭区间,个人比较喜欢HEAD方法,因为如果有比较乱的提交了,及时处理比日后堆起来处理更好。

      2、进入rebase界面之后与终端操作文档相同,按i进入编辑界面,除了第一条保留pick外,后续几条统一改为s,按esc退出编辑界面,wq保存。

      3、进入编辑提交记录界面,第一条可以修改提交的内容,也就是commit的时候写的提交内容,后面几条状态为s的记录可以按两下d删除,退出编辑,wq保存。

      4、rebase之后提交一般需要git push -f强制提交。

      5、git log 可以看到提交记录已合并。

  • git add后撤销

git status 先看一下add 中的文件
git reset HEAD 如果后面什么都不跟的话 就是上一次add 里面的全部撤销了
git reset HEAD XXX/XXX/XXX.java 就是对某个文件进行撤销了

统计代码量

  • git log --author="username" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc+= $1 - $2 } END { printf "addved lines: %s,removed lines: %s, total lines: %s\n", add, subs, loc }' -

其他内容等后续使用了继续更新。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值