从永远到永远-Git再学习

对Git进行再次学习,感谢尚硅谷的免费开放视频!

先说git,首先要理解三个名词,最开始我就理解成本地和远程仓库之间的各种操作了。git说的其实本地,远程仓库指的是gitlab,GitHub等远程代码托管。其实单纯git在本地就有这三层,这就是人们常说的git没有网络,连接不到远程仓库,也可以进行分支管理。
在这里插入图片描述
本地仓库与远程仓库的关系!
在这里插入图片描述

  1. 在创建的项目目录中右键选git bash,输入git init,初始化本地版本库
    在这里插入图片描述
  2. 签名
    用户名+Email地址的形式。不同于github等远程仓库账号,但是必须要有,用以区别开发人员身份。

1) 项目级别:git config user.name 自己的用户名.
git config user.email 12345@qq.com
有则用,否则用系统级别的
在这里插入图片描述
2) 系统级别:git config --global user.name 自己用户名
git config --global user.email 12345@qq.com
在这里插入图片描述

3.添加提交,查看状态等
1) 查看下状态 git status
在这里插入图片描述
2)新建个文件,跟Linux一样
在这里插入图片描述
3)再看状态
在这里插入图片描述
4)git add 文件被track了,扔到了暂存区,可以进行提交本地库了。
在这里插入图片描述
5)从暂存区清除,不是删除源文件。
在这里插入图片描述
6)提交本地库
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
7)第一次提交以后,就不用再git add提交暂存区了,可以直接提交。
比如我再次修改一下,加一行
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
8)查看提交记录git log,会展示所有提交信息,如图:
在这里插入图片描述
9)前进或者回退版本(其他方式:^或者~都不好用,不推荐):git reset --hard 版本编号
在这里插入图片描述
10)删除文件的找回,只要创建的文件提交到了本地库,结合上边命令回到没有删除的版本就可以。
11)比文件差异:
在这里插入图片描述
12)分支
在这里插入图片描述
多条线同时开发,一般项目初,项目经理可能做一个主分支master。各个成员开发自己功能都自己创建一个分支,不会其他分支有影响,适当时机合并回主分支。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
解决冲突
在这里插入图片描述
需要查看文件,人为决定两个修改要哪个,或者最终达成一致修改意见。
在这里插入图片描述
首先把红框内容删除,然后商量一下怎么改,形成最终方案。
在这里插入图片描述

2.Git与GitHub远程库的操作:
在这里插入图片描述
1)首页注册github账号作为远程库创建者(项目经理)。
2)项目经理创建本地库
在这里插入图片描述
3)项目经理创建远程库,如果是首次登陆的账户要验证一下邮箱。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4)将本地内容推到远程库
1》远程库别名
在这里插入图片描述
2》推送本地至远程库
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3)接下来的操作,相当于是另一个人的。我拿了一个其他人的账号,其实不涉及推送的时候,看不出是不是他人操作。。。
1》
在这里插入图片描述
在另一目录下,进行了clone操作(为了模拟了另一个人操作)。操作完发现多了一个文件目录,其实就是上边项目经理创建的那个目录。
在这里插入图片描述
进去看一下
在这里插入图片描述
这说明:git clone 远程库地址 操作做了很多事:帮我们初始化本地库(多了.git),帮我们把项目经理创建的远程库别名拿来了,帮我们把项目克隆了。
2》拿到本地对文件进行了操作以后,肯定需要推送到远程库。
在这里插入图片描述
要完成推送,需要项目经理拉该成员进入团队。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
把这个地址发给想要推送的成员,他拿到地址后,登陆

在这里插入图片描述
然后他就能看到你的项目了
在这里插入图片描述
之后他就可以有权限push了,push操作同上。

3》对于范特西的提交,我要从远程仓库拉取。
1>直接pull,相当于直接拉取内容合并,会改掉自己工作区的内容。
2>
pull=fetch+merge(如果分开执行,可以先看一下修改内容确认后再合并)
在这里插入图片描述
直接pull的话:
在这里插入图片描述
4)团队协作冲突解决,其实就是如果有冲突要先pull下来,修改好再push。
例如,范特西操作了某行内容,并push到了远程仓库。我也对同一行做了修改,也要push时候就失败了,他提示也很明显。让我们先pull下来,改好再push。修改就跟上一节的内容一样了。
在这里插入图片描述
在这里插入图片描述
经协商达成一致意见,按他的来。
在这里插入图片描述
在这里插入图片描述

5)跨团队协作,不太常见,回头再议。
在这里插入图片描述
6)SSH设置,个人感觉没啥用,就用http就行。

3.Gitlab使用,这个东西就是个私服。githu上私有项目收费,我自己搭了个gitlab服务器,操作跟以前一样的都是。
在这里插入图片描述

命令行操作毕竟不方便,但是却有助于我们理解原理。毕竟在git就是linux之父开发的,真正开发中对git的使用从以下开始即可。

一.idea中的项目如何上传到Gitlab,毕竟实际开发,每天在idea写完代码,再跑到项目目录去提交代码啥的不太现实。
我的Gitlab是自己用Docker在虚拟机搭了一个,并且当时我没有写博客,说明一个问题应该没有什么太大技术难度,有兴趣可以自行搭建。如果仅为工作需要,完全没必要搭建,因为这个活基本都是项目经理干的。在北京idea开发已经很普遍,gitlab做项目管理控制也基本普及。

1、创建项目远程仓库,创建本地项目及本地仓库、代码提交到本地仓库、push代码到远程仓库。
1)在gitlab创建项目,严格来说应该叫项目的远程仓库。
项目放在买个袋子群组下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2)打开idea,创建项目,创建本地仓库
在这里插入图片描述
在这里插入图片描述
然后看代码会发现,变成。以后新编辑的代码没有提交前都回编程红色。
在这里插入图片描述
3)之后可以将本地代码add至暂存区,其实跟上边命令行的道理一样
在这里插入图片描述
在这里插入图片描述
4)提交代码,idea其实将commit和push合并在一起了。
在这里插入图片描述
在这里插入图片描述
点击commit后会出现下拉框,这里我们直接将其push到远程仓库。
在这里插入图片描述
在这里插入图片描述
一堆提示警告及待写的代码(项目没有完全写完,TODO是idea的一个功能,用于标记还有那部分代码没开发),不管就是提交。

在这里插入图片描述

在这里插入图片描述
成了,之后看下代码,发现颜色正常了。
在这里插入图片描述
在这里插入图片描述
最后去gitlab刷新看下,发现成了!
在这里插入图片描述

2.基本上,实际开发不会直接在主分支master进行。这个在上边的学习中我们也提到了,那么怎样在idea中创建新分支呢。
1)邮件项目-Git-Repository-Branches

在这里插入图片描述
比如说dev分支:
idea右下角可以看到我们已经在dev分支上,当然也可以点击-check out到其他本地可用分支上
在这里插入图片描述
随后我们就可以在dev分支进行开发,该分支为我们本地可用分支。如果想让项目组其他成员看到,也需要将其提交到远程仓库,步骤参考1。

3.至于合并代码,暂时没时间写,因为这个事基本不会是我们做。

4.GitLab中删除项目
1)首先,在你的项目列表中选择要删除的项目,点击进入;

2)点击Settings中的General,然后点击Advanced settings 的Expend按钮;

3)滑到最下边,点击“Remove project”

4)在弹出框中输入要删除的项目名称即可;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值