创建本地仓库上传到gitee

Git概念

Git是一个免费的、开源的分布式版本控制系统(SVN集中化版本控制系统)

什么是版本控制?

版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。

版本控制系统的分类

集中化的版本控制系统:

集中化的版本控制系统诸如CVS、SVN以及Perforce等,都有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们通过客户端连到这台服务器,取出最新的文件或者提交更新。

这么做最显而易见的缺点是中央服务器的单点故障。如果服务器宕机一小时,那么在这一小时内,谁都无法提交更新,也就无法协同工作。

分布式的版本控制系统:

客户端并不只是提取最新版本的文件快照,而是把代码 仓库完整地镜像下来。

 

 

(1) 查看git安装版本

git --version

(2)清屏操作

clear

(3)设置签名:

设置用户名和邮箱:

git config --global user.name "mting"

git config --global user.email "348265****@qq.com"

(4)本地仓库的初始化

$ git init

.git文件下的子目录不要随意删除

Git常用命令

add和commit命令

【1】先创建一个文件:

Demo.txt

【2】将文件提交到暂存区:

$ git add Demo.txt

【3】将暂存区的内容提交到本地库:

git commit -m "这是我提交的第一个文件 Demo.txt" Demo.txt

注意:不放在本地仓库的文件git不进行管理

status命令

查看状态:

git status

修改文件后需要重新添加至:暂存区

git add Demo2.txt

然后将暂存区的文件提交到本地库

git commit -m "Demo2.txt文件被修改后的内容" Demo2.txt

log命令

查看日志: git log

当历史记录过多的时候,查看日志的时候,有分页效果,分屏效果,一页展示不下

下一页:空格

上一页:b

到尾页了,显示END

退出:q

日志展示方式:

方式1: git log

方式2:git log --pretty=oneline

方式3:git log --oneline

 

方式4:git reflog

 

reset命令

复制:在终端选中就是复制了

粘贴:右键:paste

【1】hard参数:git reset --hard [索引]

本地库的指针移动的同时,重置暂存区,重置工作区

 

【2】mixed参数:git reset --mixed [索引]

本地库的指针移动的同时,重置暂存区,但是工作区不动

【3】soft参数:git reset --soft [索引]

本地库指针移动的时候,暂存区和工作区都不动

总结:第一种hard参数用的最多

删除本地文件和找回本地库删除的文件

【1】新建一个test2.txt文件

【2】将它add到暂存区中

【3】再通过commit提交到本地库

【4】删除工作区中test2.txt

【5】将删除操作同步到暂存区

【6】将删除操作同步到本地库

 

【7】查看日志

 

【8】找回本地库中删除的文件,实际上就是将历史版本切换到刚才添加文件的那个版本即可

 

找回暂存区删除的文件

【1】删除工作区数据

 

【2】同步到暂存区

 

【3】恢复暂存区中数据

 

diff命令

【1】新建一个test3.txt文件,添加到暂存区,提交到本地库

 

将test3.txt文件工作区与暂存区进行比较

总结:git diff [文件名] =》将工作区中的文件和暂存区中文件进行比较

多文件进行比较

 

总结:git diff --->比较工作区和暂存区中 所有文件的差异

操作分支

查看分支

 

创建分支

 

切换分支

 

查看分支添加的内容

 

合并分支

 

本地创建远程库地址的别名

查看别名:

 

起别名:

 

 

推送数据

 

 

克隆操作

克隆操作可以帮助我们完成:

(1)初始化本地库

(2)将远程库内容完整的克隆到本地

(3)替我们创建远程库的别名:

 

 

远程库经理拉去操作

 

项目经理进行拉取:

(1)先是抓取操作:fetch

 

在抓取操作执行后,只是将远程库的内容下载到本地,但是工作区中的文件并没有更新。工作区还是原来的内容

抓取后可以区远程库分支看看

 

 

 

 

远程库拉取可以直接利用pull命令来完成:

 

 

注意:当修改了远程仓库中的内容时,因为并没有跟本地仓库同步,所以在本地仓库执行push时会报错,此时需要执行git pull --rabase origin master,然后执行git push origin master即可解决

协同开发时冲突解决

(团队其他成员修改同一个文件区域)

在冲突情况下,应该先拉取下来,然后修改冲突,然后在推送到远程服务器

注意:解决冲突问题的时候,提交不可以代文件名,否则提交失败

 

跨团队合作

【1】得到远程库地址(A公司)

【2】进行fork操作(B公司)

进入到账号后,复制地址,然后点击下面的fork操作;

免密操作

【1】进入用户的主目录中:

 

【2】执行命令,生成一个.ssh的目录:

 

 

keygen ----> key generation

注意:C要大写

后面的邮箱要与git注册的账号的时候邮箱相对应

三次回车默认值即可

 

发现.ssh目录下有两个文件

 

【3】打开id_ras.pub文件,将里面的内容进行复制操作

 

【4】打开git账号

 

 

【5】生成密钥以后,就可以正常进行push操作

对ssh远程地址起别名

 

展示别名

 ******************MTING***************

THANKS!

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值