昨天学习利用git配置版本库时,配置好的git,要commit一些修改,就遇到了这个问题。
首先新建了一个名为learngit的空版本库,然后在learngit目录下新建了一个readme.txt
文件,内容如下:
Git is a version control system.
Git is free software.
此处的readme.txt放到learngit
目录下(子目录也行),因为这是一个Git仓库,放到其他地方Git找不到这个文件。
然后执行以下两步:
第一步:使用命令 git add readme.txt添加到暂存区里面去。
第二步:用命令 git commit告诉Git,把文件提交到仓库。本人输入的是:
git commit -m "wrote a readme file"
执行完第二步操作后,问题来了。先后出现了以下两个报错:
1)unable to auto-detect email addres
具体报错内容如下:
** Please tell me who you are.
Run
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
to set your account's default identity.
Omit --global to set the identity only in this repository.
fatal: unable to auto-detect email address (got 'tim@newton.(none)')
解决方案如下:
找到工程目录的.git文件夹,打开之后找到config文件,在最后边加上一句话
[user]
email=your email
name=your name
your email 和your name随便写上就行
2)fatal: This operation must be run in a work tree
解决了第一个报错以后,继续执行 git commit -m "wrote a readme file"
结果,又提示报错:
fatal: this operation must be run in a work tree
参考网上reference2给出的方法可解决该问题,再次感谢。(ps:我之前忘记激活git库了,后来重试了一遍不再出现问题2)
若读者解决问题一后遇到该问题,可考虑以下解决方案:
由于git init –bare 方法创建一个裸仓库,在该仓库无法进行任何git操作,所以抛出错误.
解决方法:在该仓库目录下,新建文件夹,进入该文件夹,执行如下命令:
1. touch Readme
2. git init
3. git add Readme
4. git commit -m 'initial commit' Readme
本博客参考了以下链接:
References:
[1] https://blog.csdn.net/liufangbaishi2014/article/details/50037507
[2] https://blog.csdn.net/weixin_35755389/article/details/52679693