0、环境说明
1 2 |
OS: CentOS-7-x86_64-Minimal Git: git-2.15.2 |
1、下载gitlab项目到本地
1 2 3 4 5 6 7 8 9 10 11 |
//直接使用git clone 项目地址 ,即可下载项目路整个文件夹到当前目录下 [root@imzcy ~]# git clone http://zcy@gitlab.imzcy.cn/demo2/zcy-project.git Cloning into 'zcy-project'... Password for 'http://zcy@gitlab.imzcy.cn': remote: Counting objects: 81, done. remote: Compressing objects: 100% (55/55), done. remote: Total 81 (delta 24), reused 78 (delta 21) Unpacking objects: 100% (81/81), done. [root@imzcy ~]# ls zcy-project [root@imzcy ~]# |
正常是不能直接提交更改到gitlab的master分支的,要先在gitlab中将Master分支解除保护才行,地址为:
1 |
gitlab-->打开某个项目-->Settings-->Repository-->下拉找到Unprotect点击解除保护 |
2、上传文件或目录到gitlab
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
#2.1、进到刚才下载的项目文件夹中,新建一个文件用来测试提交 [root@imzcy ~]# cd zcy-project/ [root@imzcy zcy-project]# echo www.imzcy.cn >imzcy.txt #2.2、设置提交时使用的用户名和邮箱信息 [root@imzcy zcy-project]# git config --global user.name "zcy" [root@imzcy zcy-project]# git config --global user.email "zhangchenyang@imzcy.cn" #2.3、重新初始化Git存储库到当前目录 [root@imzcy zcy-project]# git init Reinitialized existing Git repository in /root/zcy-project/.git/ #2.4、添加一个远程仓库用作提交 [root@imzcy zcy-project]# git remote add zcy-project http://zcy@gitlab.imzcy.cn/demo2/zcy-project.git #2.5、添加要提交的文件 [root@imzcy zcy-project]# git add imzcy.txt #2.6、指定本次提交的描述 [root@imzcy zcy-project]# git commit -m "add imzcy.txt" [master a37dc45] add imzcy.txt 1 file changed, 1 insertion(+) create mode 100644 imzcy.txt #2.7、push提交文件 [root@imzcy zcy-project]# git push zcy-project master Password for 'http://zcy@gitlab.imzcy.cn': Counting objects: 3, done. Compressing objects: 100% (2/2), done. Writing objects: 100% (3/3), 355 bytes | 355.00 KiB/s, done. Total 3 (delta 0), reused 0 (delta 0) To http://gitlab.imzcy.cn/demo2/zcy-project.git 64edf1e..a37dc45 master -> master [root@imzcy zcy-project]# |
此时浏览器登录gitlab查看项目,发现已经imzcy.txt文件已经提交上去了
下次提交其他项目的时候,只需要把把项目先使用git clone下载下来,然后进入该项目文件夹,然后重复上面2.3到2.7步骤就行了,但是记得要把2.4中添加的远程仓库名字改成新的项目的名字。
关于上面2.5所述提交,除了直接指定文件名提交的方式外,还有以下几种
1 2 3 4 5 6 7 8 9 |
git add imzcy.txt 提交immzcy.txt文件到队列 git add zcy/111.txt 提交zcy/111.txt文件到队列,此时哪怕zcy目录下同时新增了多个文件也只会提交111.txt一个 git add zcy/ 提交zcy目录下所有变化(新增、删除、修改的文件都会被提交) git add . 提交本地仓库所有新文件和被修改的文件到队列,不包括被删除的文件(如果2.5中使用此命令,新增的imzcy.txt文件将会被上传) git add -u 提交本地仓库所有被修改和被删除的文件,不包括新文件(如果2.5中使用此命令,新增的imzcy.txt文件将不会被上传) git add -A 提交本地仓库所有变化(新增、修改 、删除的文件都会别提交) 不能提交新建的空目录,可以多次使用git add添加多个文件到队列,然后使用commit设置好提交描述,push一次全部提交 |