使用git将本地代码上传到gitLab全过程

简介:这次使用qt creator先创建好项目,然后我想将它上传到gitlab上面去。当然,现在什么准备工作都没做(包括本地项目、远程仓库都没有创建)。

1、先创建本地项目:为了简单,我就直接创建了一个basic项目,就不去创建源文件,头文件就行了。

使用git将本地代码上传到gitLab全过程

2、项目创建好之后,先看看项目内容,再运行一下。(此处默认没有任何问题)

使用git将本地代码上传到gitLab全过程

3、接下来去工程目录里面。(qt creator做得很好,将我的项目源文件和编译执行文件不放在一个文件夹,我喜欢,这样我就很明显的能够区分哪些该上传,那些不应该上传)

使用git将本地代码上传到gitLab全过程

使用git将本地代码上传到gitLab全过程

4、首先,项目创建好了,现在本地初始化仓库(我这里使用的git bash)

git init:初始化

git status:查看状态(红色的就是没有提交的修改,第一次,肯定所有的文件都是显示修改的文件)

使用git将本地代码上传到gitLab全过程

git add .:添加所有的文件为要提交的文件(或者使用git add main.cpp mainwindow.cpp mainwindow.h ......一个一个手动添加)

状态显示为绿色说明是已经注册修改,但是没有提交到本地仓库,当然也没有提交到远程仓库。

使用git将本地代码上传到gitLab全过程

git commit -m "init project":提交到本地仓库( -m "XXX" 是对此次提交的内容说明)

使用git将本地代码上传到gitLab全过程

git push:推送到远程仓库(现在直接git push肯定不行,因为远程仓库还没创建,也没有关联到本地)

使用git将本地代码上传到gitLab全过程

5、创建远程仓库,登录到gitlab,然后就开始创建仓库

使用git将本地代码上传到gitLab全过程

设置远程仓库(我这里就是设置简单的,没有使用ssh,注意我这里勾选了 README)我习惯将项目文件夹名称与远程仓库名称保持一致。

使用git将本地代码上传到gitLab全过程

然后远程仓库就创建好了

使用git将本地代码上传到gitLab全过程

6、现在就需要将本地项目仓库链接到远程仓库

拷贝远程仓库的 链接

使用git将本地代码上传到gitLab全过程

git remote add origin https://gitlab.com/fengyue0110/gittest.git:将本地仓库和远程仓库链接

使用git将本地代码上传到gitLab全过程

查看状态没有需要提交的内容,但是我们需要推送到远程仓库

使用git将本地代码上传到gitLab全过程

git push -u origin master:将本地的master分支推送到origin主机,同时指定origin为默认主机,后面就可以不加任何参数使用git push了。此处报错,需要先git pull,因为我前面创建项目选择了README,需要先将文件pull下来,再push上去。

使用git将本地代码上传到gitLab全过程

git pull:将远程仓库的内容拉取到本地(第一次直接git pull不行,因为本地并不知道远程仓库的情况)

使用git将本地代码上传到gitLab全过程

 

git branch --set-upstream-to=origin/master master:在本地分支和远程分支之间建立跟踪连接

使用git将本地代码上传到gitLab全过程

此时直接git pull 有问题,因为我创建远程仓库的时候有提交记录,(README)

使用git将本地代码上传到gitLab全过程

git pull --allow-unrelated-histories:该命令用于在第一次pull之前有提交记录的时候。

使用git将本地代码上传到gitLab全过程

执行上诉命令后,会提示输入必要的信息,我直接推出的(怎么推出请看下一步的操作)

使用git将本地代码上传到gitLab全过程

这是vim模式:ESC->:wq->enter (完了之后就看到将README文件pull到本地到,可在目录中查看)

使用git将本地代码上传到gitLab全过程

使用git将本地代码上传到gitLab全过程

进行到这里就差最后一步了,我们先去看看远程仓库情况如何,(没有任何改变,依然很干净)

使用git将本地代码上传到gitLab全过程

接下来我们在本地 git push一次就ok了。

使用git将本地代码上传到gitLab全过程

使用git将本地代码上传到gitLab全过程

然后就可以正常的coding、git pull 、git commit -m "XXX"、git push了。