git推送项目到github

1、登陆github创建一个repository

新建

复制新项目地址

2、进入本地要添加的项目目录,右键执行git bash

git config --global user.email "you@example.com"
git config --global user.name "Your Name"
git init

git remote add origin https://github.com/zhaobw520/datareport.git
git push -u origin master

这里报错“error: failed to push some refs to 'https://github.com/zhaobw520/datareport.git'”
这里提示推送失败,因为在GitHub上初始化了一个README.MD文件,远程仓库中的文件比本地的要新,所以要使用git pull要把最新的文件抓下来,与本地的文件合并之后在提交。
就是第一个截图,打勾勾的地方,记着不要打。
解决办法是先把仓库的readme同步到本地。

git pull
又报错

原因是没有指定本地master和远程origin/master的连接。
创建连接

git checkout master 切换本地git到master分支
git branch --set-upstream-to master origin/master 创建到远端的连接

再次执行git pull

git pull

增加readme.md到缓存

git commit -m "merge README.MD"
开始推送
git push -u origin master

新项目上传步骤(新项目上传使用以下步骤就好)

1、在github上创建新的仓库,切记不要创建README文件,否则因为本地和远程仓库不一致导致报错。
2、git bash一定要在上传的项目目录里打开
3、执行

git init 初始化本地仓库

git config --global user.email "you@example.com" 第一次使用git需要填个人信息,之后就不需要了
git config --global user.name "Your Name"

git remote add origin https://github.com/zhaobw520/datareport.git 创建远程仓库连接
git pull --rebase origin master 获取远程同步,如果远程库不为空(一般是创建了readme文件)必须做这一步,否则后面的提交会失败。否则不用执行
echo "# some your message" >> README.md 如果没有创建readme文件,需要执行这一步

git add . 把项目加入到本地仓库
git commit -m ‘first commit’ 提交
git push -u origin master 上传

常用命令参数

git branch
检查分支

git add .
不加参数默认为将修改操作的文件和未跟踪新添加的文件添加到git系统的暂存区,注意不包括删除
git add -u .
-u 表示将已跟踪文件中的修改和删除的文件添加到暂存区,不包括新增加的文件,注意这些被删除的文件被加入到暂存区再被提交并推送到服务器的版本库之后这个文件就会从git系统中消失了。
git add -A .
-A 表示将所有的已跟踪的文件的修改与删除和新增的未跟踪的文件都添加到暂存区
git commit -m ‘message’
-m 参数表示可以直接输入后面的“message”,如果不加 -m参数,那么是不能直接输入message的,而是会调用一个编辑器一般是vim来让你输入这个message,
message即是我们用来简要说明这次提交的语句。
git commit -am ‘message’ -am等同于-a -m
-a参数可以将所有已跟踪文件中的执行修改或删除操作的文件都提交到本地仓库,即使它们没有经过git add添加到暂存区,
注意: 新加的文件(即没有被git系统管理的文件)是不能被提交到本地仓库的。

git push origin master
如果远程分支被省略,如上则表示将本地分支推送到与之存在追踪关系的远程分支(通常两者同名),如果该远程分支不存在,则会被新建
git push origin :refs/for/master
如果省略本地分支名,则表示删除指定的远程分支,因为这等同于推送一个空的本地分支到远程分支,等同于 git push origin –delete master
git push origin
如果当前分支与远程分支存在追踪关系,则本地分支和远程分支都可以省略,将当前分支推送到origin主机的对应分支
git push
如果当前分支只有一个远程分支,那么主机名都可以省略,形如 git push,可以使用git branch -r ,查看远程的分支名

报错收集

1、master->master(fetch first)的解决方法

出现这个原因是仓库中的代码和本地中的代码不一致,需要先将仓库里的代码pull下来。
git pull <远程主机名> <远程分支名>:<本地分支名>
再次上传,解决。

原文地址:https://www.cnblogs.com/zhaobowen/p/13264466.html