git常见问题记录

1.文件权限的变更导致Git的变动

在之前把开发环境由Windows转入Ubuntu之后,发现一个特别奇怪的问题,
就是AndroidStudio的文件经常改着改着突然所有的文件都出现了改动
仔细对比你会发现没有什么代码改动,这次无意中发现,是因为git对文件权限的改动也做了记录

解决方案

//配置git忽视权限的变动 (毕竟文件权限不是我们关心的改变)
$ git config core.filemode false

2.文件名大小写改动git不识别

git 默认不区分文件名大小写

//配置`git `使其对文件名大小写敏感
$ git config core.ignorecase false

3.强大的cherry-pick将提交到A分支commit提交到B分支

将原本该在dev分支的bugfixed提交到了master分支

1.  找到master刚提交的commit id
2.  切换到 dev 
3.  git cherry-pick “commit id xxx”

4.本地代码reset之后,push failed

1.  打开git bash 来操作 (最新版本的androidstudio已经可以进行force push了)
2.  切换到git托管的目录
3.  git push -f (force) //加上-f参数 强制刷新remote/origin/xxxxx

5.后续添加新的规则到.gitignore不生效

在用 Git进行代码管理的过程中,我们会发现后添加进去的 .gitignore文件, 或者是中途修改了 .gitignore文件后,.gitignore文件没有生效,我们需要通过清除track 缓存强制 track来解决问题

  • Git代码管理中,我们在没有添加.gitignore文件的前提下提交了代码之后再提交.gitignore 文件,或者是中途添加某一文件类型到.gitignore文件中,需要通过以下命令行的方式,让.gitignore 文件生效:
    //清除缓存
    git rm -r --cached .
    //添加
    git add .
    //提交
    git commit -m "xxxxx"

  • 如果是中途从.gitignore文件中移除某一文件类型,想要这个文件类型重新被 track,需要通过以下命令行的方式,让.gitignore 文件生效:
    //添加的时候加上-f参数
    git add -f *.class
    //提交
    git commit -m "xxx"
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 这是我在学习Git的过程中所做的读书笔记的相关总结,希望能对刚刚接触Git或Github的小伙伴们带来一点点帮助,...
    sonack阅读 7,347评论 9 56
  • 一、电脑本地初始化一个仓库 1. git init: 初始化一个电脑上本地仓库 终端进入项目目录,输入: 该命令将...
    dragon_li阅读 8,164评论 1 4
  • 晚上跟家里开了一个家庭会议,会议一开始就被妈妈狂批评一顿,会议主题不明确,也没有清楚的会议流程,哎,其实我就想问问...
    叶子卷阅读 1,950评论 3 2
  • 曾经有位朋友说到她的孩子一点也不和她亲,一天能说上个三四句话就算不错了,你要是不去找他说话他就干脆“无视”了自己,...
    恰是逝水流年阅读 1,760评论 0 2

友情链接更多精彩内容