1、进行push操作的时候,提示
fatal: refusing to merge unrelated histories
error: failed to push some refs to 'https://github.com/***********’
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
造成以上错误的原因有可能是这样的:
上图是我们在github上创建仓库的页面,勾选了创建README的选项。那么生成的远端库就会有一个README.md文件,这个文件跟我们本地库没有关系(要知道我们从本地库上传到远端库的文件都是经过add操作,即被跟踪了的)
这就造成了我们push还是pull的时候,远端库觉得本地库跟自己没关系,导致操作失败。
比较简单的解决方法有2种:
1)在创建仓库的时候不要勾选那个选项
2)在进行pull操作前,在git-bash终端输入
git pull origin master --allow-unrelated-histories //把两段不相干的分支进行强行合并
2、进行commit操作的时候,提示
On branch master
nothing to commit, working tree clean
应该有挺多可能的原因,我遇到这个问题是因为上面那个坑。解决上面那个坑后,在add后直接push就成功了。
3、上传vs项目,进行add操作的时候,提示
error: open(".vs/ExperimentImg/v16/Browse.VC.opendb"): Permission denied
error: unable to index file '.vs/ExperimentImg/v16/Browse.VC.opendb'
fatal: adding files failed
借鉴:https://www.cnblogs.com/Fred1987/p/10934705.html
4、进行remote操作时,提示
fatal: remote origin already exists.
输入:git remote rm origin
重新进行remote操作
5、进行push操作时,提示
remote: error: GH001: Large files detected. You may want to try Git Large File Storage - https://git
原因是我们上传的项目太大了,超过了100m
参考
1-5参考:https://www.cnblogs.com/pskcoco/archive/2004/01/13/12448792.html
VS+Qt 哪些文件需要上传
标题需要上传的代码
- 所有自己写的 .h .cpp .c 文件,以及第三方库的 .h 文件
- 项目工程相关文件 .sln 文件和 .vcproj文件,QT工程的 .qrc 文件
- 项目资源文件,MFC工程为res目录和.rc文件,QT工程为 Resources 目录和 .ui文件,以及做界面所添加的 .ico图标文件、.img等图像文件。
- 第三方库文件 .lib或者.dll ,自己工程生成的lib和dll不用上传。而使用的第三方库则不一样,如果程序链接需要第三方的lib,或者运行时需要当前运行目录下有这个第三方的dll,则需要上传。
- 其他
不需要上传的代码,即那些自动生成的目录或者文件:
- ncb 文件, suo文件,vcproj.XP-201108262034.XXX.user文件
vs2008与工程相关的文件有5种,“ .sln ” “ .suo ” “ .ncb” “.vcproj” “.vcproj.XP-201108262034.XXX.user”
只有 .sln 和 .vcproj 是需要上传到svn中的,其他的文件都是系统编译时会自动生成的,请不要上传到svn,否则每个人生成的不一样,经常会出现冲突。 - debug 目录,release目录
debug目录和release目录都是在编译的时候,可以自动生成的,里面的所有文件如.obj也是临时生成的,所以,千万不要把任何debug目录和release目录下的文件上传到svn - exe文件,lib文件,dll文件
这三个文件均指的是本工程自己生成的exe、lib和dll文件,由于工程每次编译后均会自动生成,因此不要上传。 - GeneratedFiles 目录
如果是QT的项目工程,则编译结束后会出现一个 GeneratedFiles 目录,请注意,这个目录也是自动生成的,千万不要上传到svn中。
5.其他,比如有的项目可能用到数据库、配置文件什么的