每日一记-Git使用中遇到的小问题

这几日在使用Git过程中,遇到过很多小问题,实践让人印象深刻。

  • git不会提交空文件夹

    事情起因是在搭起一个测试练手的web项目时,首先将整个项目的目录结构搭建了起来,然后一系列的add、commit、push之后,没有在意远程库的状态直接开始敲下一步的代码,完成了config下配置文件的配置、common包下基类、Util包下工具类的编写,然后又一次的add、commit、push,之后通知了下小伙伴们可以开搞了,结果小伙伴clone完之后就懵逼了:这是什么鬼,项目里只有这仨包了,其他层级目录都没了。开始还以为是我这个git水平太水了,哪里没搞好,反复检查,调了半天,结果毫无用处。不死心又新建了个测试包,然后git statu看了下,很神奇,竟然没有检测到更改,然后去万能的google下,才发现这么多都跳过坑的,

    虽然上次学习git的时候觉得git初始化的时候是基于文件的特征码扫描更改的,这次算是确定了,知乎上看了几个回答都是这个意思。Git是基于文件的,所以空文件夹并不会被视为更改,如果要提交空文件夹上去,可以在Bash下在文件内新建一个.empty或者.gitkeep的空文件。如果是src的包内可以考虑新建一个类放着,资源包或者web下可以考虑放一个空的xml文件占个位。

  • git修改远程库位置

    在从远程库clone之后,在本地库Bash下通过
    git remote -v可以看到远程库信息,默认的应该是显示两条:
    origin ***@***:***/***.git (fetch)
    origin ***@***:***/***.git (push),一般情况下很少会再去修改远程库的信息,但是总有意外的时候,之前自己搭的远程仓库测试练习用,然后要用统一的服务器,所以想要将现在的测试练习项目直接推到新的远程库上,这就需要修改远程库的位置。google之后发现可以通过这条命令实现:
    git remote set-url origin ***@***:***/***.git,直接修改远程库的链接地址,然后push即可。

  • git修改远程库别名

    默认情况下,所有的远程库在本地别名都是origin,几个项目都是一样的,有时候容易迷糊,所以想换一个新的远程库别名,准备修改成当前项目的名称。命令:git remote rename origin project

  • git强制推送到远程库

    代码敲的多了难免手抖啊,今天完成一小部分的编写之后,不知道哪里抖了下删了点什么,没注意到就直接push了,push完发现整个项目一堆的红叉叉,调试了一会改掉了问题,就再一次的提交,结果push被拒绝了,也没提示有冲突,就是不行,网上搜了下大部分说的是强制push就可以了。命令:git push -f *** ***

    然后去网上看了一个分析贴,发现这个命令不能常用,因为是强制推送,会覆盖掉之前的版本,而这个过程中如果有其他人修改之后push了,那么很容易造成版本问题,影响与小伙伴的协作开发。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值