GitHub启用2FA后COMP167文件夹提交无法纳入新增未跟踪文件问题咨询
问题原因
git commit -a命令的原生逻辑就是仅提交已跟踪文件的修改、删除变动,默认不会自动纳入从未加入过跟踪列表的新增文件,你看到的untracked files提示就是Git识别到新增文件但未加入暂存区的反馈。- 你看到的
Your branch is up to date with 'origin/master'提示,是因为没有已暂存的内容可以提交,所以Git判定本地分支和远程分支没有差异。 - 你记忆里无需手动添加跟踪就能提交新文件,大概率是之前使用了Git图形化客户端、IDE内置Git功能,这类工具默认会自动勾选新增未跟踪文件,等效于后台帮你执行了
git add操作,和本次配置2FA没有关联。 - 配置2FA后不再弹出账号密码输入属于正常现象,是因为本地Git凭证管理器已经缓存了你有效的GitHub访问令牌,无需每次交互时校验身份。
修复方案
单次提交操作步骤
- 进入目标仓库目录后,先执行暂存命令:如果只需要提交指定新增文件,执行
git add file.html;如果需要提交当前目录所有修改和新增文件,执行git add . - 执行提交命令:
git commit -m "Adding file.html",已经执行过git add的情况下不需要再加-a参数 - 最后执行推送命令即可:
git push
简化操作(可选)
如果想恢复之前一键提交的效果,可以自定义Shell命令别名,把三步操作合并:
以bash/zsh为例,在~/.bashrc或~/.zshrc文件中加入以下内容:
alias gitpushall='git add . && git commit -m "$1" && git push'
重载配置文件后,后续提交时只需执行gitpushall "提交说明"即可完成全流程,注意该操作会提交当前目录所有变动,使用前建议先执行git status确认无不需要提交的文件。
内容的提问来源于stack exchange,提问作者James Stephen Brown
相关产品推荐
相关产品推荐

