Git--远程操作

这篇具有很好参考价值的文章主要介绍了Git--远程操作。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言


正文开始!!!

一、理解分布式版本控制系统

我们目前所说的所有内容(工作区,暂存区,版本库等等),都是在本地!也就是在你的笔记本或者计算机上.而我们的**Git其实是分布式版本控制系统!**什么意思呢?

可以简单理解为,我们每个人的电脑上都是一个完整的版本库,这样你工作的时候,就不需要联网了,因为版本库就在你自己的电脑上.既然每个人电脑上都有一个完整的版本库,那多人如何协作呢?比方说你在自己电脑上改了文件A,你的同时也在它的电脑上改了文件A,这时,你们俩之间只需把自己各自的修改推送给对方,就可以互相看到对方的修改了.

git 连接远程,Git的原理和使用,git

分布式版本控制系统的安全性要高很多,因为每个人电脑里都有完整的版本库,某一个人的电脑坏掉了不要紧,随便从其他人那里复制一个就可以了.

在实际开发使用分布式版本控制的时候,其实很少在两人之间的电脑上推送版本库的修改,因为可能你们俩不在一个局域网内,两台电脑互相访问不了.也可能今天你的同事病了,它的电脑压根没有开机.因此,分布式版本控制系统通常也有一台充当"中央服务器"的电脑,但这个服务器的作用仅仅是用来方便"交换"大家的修改,没有它大家也一样干活,只要交换修改不方便而已.有了这个"中央服务器"的电脑,这样就不怕本地出现什么故障了(比如运气差,硬盘坏了,上面的所有东西全部丢失,包括git的所有内容).

二、远程仓库

Git是分布式版本控制系统,同一个Git仓库,可以分布到不同的机器上,怎么分布呢?最早肯定只有一台机器有一个原始版本库.此后,别的机器可以"克隆"这个原始版本库,而且每台机器的版本库其实都是一样的,并没有主次之分.

你肯定会向,至少需要两台机器才能玩远程库是不是?但是我只有一台电脑,怎么玩?

其实一台电脑上也是可以克隆多个版本库的,只要不在同一个目录下.不过,现实生活中是不会有人这么傻在一台电脑上搞几个远程库玩,因为一台电脑上搞几个远程库完全没有意义,而且硬盘挂了会导致所有的库都挂掉,所以我也不告诉你在一台电脑上怎么克隆多个仓库.(哈哈哈,开个玩笑).

实际情况往往是这样的,找一台电脑充当服务器的角色,每天24小时开机,其他每个人都从这个"服务器"仓库克隆一份到自己的电脑上,并且各自八个字的提交推送到服务器仓库里,也从服务器仓库中拉取别人的提交.

完全可以自己搭建一台运行Git的服务器.不过现阶段我们只为了学Git搭服务器是小题大做.好在这个世界有个叫GitHub的神奇网站,从名字就可以看出,这个网站就是提供Git仓库托管服务的,所以,只要注册一个GitHub账号,就可以免费获得Git远程仓库.

GitHub是国外的网站,速度比较慢.所以在学习过程采用Gitee来托管代码.

下面我们从零开始,使用一个Gitee的远程仓库.

1.新建远程仓库

新建远程项目仓库 :
git 连接远程,Git的原理和使用,git

填写基本信息 :

git 连接远程,Git的原理和使用,git

创建成功 :

git 连接远程,Git的原理和使用,git
创建成功后,我们可以对远程仓库进⾏⼀个基本的设置:开源or私有

git 连接远程,Git的原理和使用,git
git 连接远程,Git的原理和使用,git
从创建好的远程仓库我们便能看到,之前在本地学习过的分支,也存在于远程仓库中并被管理起来了.刚创建的仓库有且只有一个默认的master分支.
git 连接远程,Git的原理和使用,git

git 连接远程,Git的原理和使用,git

2.克隆远程仓库

克隆/下载远端仓库到本地,需要使用git clone命令,后面跟上我们的远端仓库的连接,远端仓库的连接可以从仓库中找到 : 选择"克隆/下载"获取远程仓库的连接 :

git 连接远程,Git的原理和使用,git
SSH协议和HTTPS协议是Git最常使用的两种数据传输协议.SSH协议使用了公钥加密和公钥登录机制,体现了其实用性和安全性,使用此协议需要将我们的公钥放在服务器上,由Git服务器进行管理.使用HTTPS方式时,没有要求,可以直接克隆下来.

  • 使用HTTPS方式 :

git 连接远程,Git的原理和使用,git

  • 使用SSH方式 :

git 连接远程,Git的原理和使用,git
使用SSH方式克隆仓库,由于我们没有添加公钥到远端仓库中,服务器拒绝了我们的clone链接.需要我们设置一下 :

第一步 : 创建SSH key.在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsaid_rsa.pub这两个文件,如果已经有了,可直接跳到下一步.如果没有,需要创建SSH key :

git 连接远程,Git的原理和使用,git
注意要输入自己的邮箱,然后一路回车,使用默认值即可.
git 连接远程,Git的原理和使用,git

顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsaid_rsa.pub两个文件,这两个就是SSH key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人.
git 连接远程,Git的原理和使用,git
第二步 添加自己的公钥到远端的仓库.

git 连接远程,Git的原理和使用,git
git 连接远程,Git的原理和使用,git

git 连接远程,Git的原理和使用,git

git 连接远程,Git的原理和使用,git
点击确认后,需要对你进⾏认证,输⼊你的账号密码即可。⾄此,我们的准备⼯作全部做完,欢快的
clone吧。

git 连接远程,Git的原理和使用,git
done,成功!如果有多个人协作开发,GitHub/Gitee允许添加多个公钥,只要把每个人的电脑上的key都添加到GitHub/Gitee,就可以在每台电脑上往GitHub/Gitee上提交推送了.

当我们从远程仓库克隆猴,实际上Git会自动把本地的master分支和远程的master分值对应起来,并且远程仓库的默认名称是origin.在本地我们可以使用git remote命令,来查看延远程库的信息,如 :

git 连接远程,Git的原理和使用,git
或者可以使用git remote -v显示更详细的信息:

git 连接远程,Git的原理和使用,git

上面显示了可以抓取和推送的origin的地址.如果没有推送权限,就看不到push的地址.推送是什么呢?请看下面!

3.向远程仓库推送

git 连接远程,Git的原理和使用,git
本地已经clone成功远程仓库后,我们便可以向仓库中提交内容,例如新增一个file.txt文件 :
git 连接远程,Git的原理和使用,git
提交时要注意,如果我们之前设置过全局的name和e-mail,这两项配置需要和gitee上配置的用户名和邮箱一致,否则会出错.或者从来没有设置过全局的name和e-mail,那么我们第一次提交时也会报错.这就需要我们重新配置一下,同样要注意需要和gitee上配置的用户名和邮箱一致.如何配置之前已经讲过,在这里就不再赘述了.

到这里我们已经将内容提交至本地仓库中,如何将本地仓库的内容推送至远程仓库呢,需要使用git push命令,该命令用于降本的分支版本上传到远程合并,命令格式如下 :

git push <远程主机名> <本地分支名>:<远程分支名>

# 如果本地分支名和远程分支名相同,则可以省略冒号:
git push <远程主机名> <本地分支名>

此时我们要将本地的master分支推送到origin主机的master分支,则可以 :

git 连接远程,Git的原理和使用,git
推送成功!这里由于我们使用的是SSH协议,是不用每一次推送都输入密码的,方便了我们的推送操作.如果你使用的是HTTPS协议,有个麻烦的地方就是每次推送都必须输入口令.

git 连接远程,Git的原理和使用,git

代码已经被推送至远端了 :
git 连接远程,Git的原理和使用,git

4.拉取远程仓库

在Gitee上点击file.txt文件并在线修改它 :
git 连接远程,Git的原理和使用,git
修改内容:
git 连接远程,Git的原理和使用,git
此时远程仓库是要领先于本地仓库一个版本,为了使本地仓库保持最新的版本,我们需要拉取下远端代码,并合并到本地.Git提供了git pull命令,该命令用于从远程获取代码并合并本地的版本.格式如下 :

git pull <远程主机名> <远程分支名>:<本地分支名>

# 如果远程分支是与当前分支合并,则冒号后面的部分可以省略
git pull <远程主机名> <远程分支名>

使用一下 :
git 连接远程,Git的原理和使用,git
我们发现,拉取成功了!

git 连接远程,Git的原理和使用,git

5.配置Git

忽略特殊文件

在日常开发中,我们有些文件不想或者不应该提交到远端,比如保存了数据库密码的配置文件,那怎么让Git知道呢?在Git工作区的根目录下创建一个特殊的.gitignore文件,把要忽略的文件名填进去,Git就会自动忽略这些文件了.

不需要从头写.gitignore文件,gitee在创建仓库时就可以为我们生成,不过需要我们主动勾选一下 :

git 连接远程,Git的原理和使用,git
如果当时没有选择这个选项,在工作区创建一个也是可以的.无论那种方式,最终都可以得到一个完整的.gitignore文件,例如我们向忽略以.so.ini结尾的所有文件,.gitignore的内容如下 :

git 连接远程,Git的原理和使用,git
.gitignore文件中也可以指定某个确定的文件.

最后一步就是把.gitignore也提交到远端,就完成了 :

git 连接远程,Git的原理和使用,git
接下来我们就来验证一下.gitignore文件的功能,在工作区新增两个文件a.sob.ini :

git 连接远程,Git的原理和使用,git
检验.gitignore的标准就是git status命令是不是说working tree clean.我们发现Git并没有提示在工作区中有文件新增,果然.gitignore生效了!

但有些时候,你就想添加一个文件到Git,但由于这个文件被.gitignore忽略了,根本添加不了,那么可以用-f强制添加 :

git add -f [文件名]

或者你发现,可能是.gitignore写得有问题,需要找出来到底那个规则写错了,比如说a.so文件是要被添加的,可以用git check-ignore -v a.so命令检查 :
git 连接远程,Git的原理和使用,git
Git会告诉我们,.gitignore的第3行规则忽略了该文件,于是我们就可以知道应该修订哪个规则.

还有些时候,当我们编写了规则排除了部分文件时,例如 :

.*

但是我们发现.*这个规则把.gitignore也排除了.虽然可以用git add -f强制添加进去,但是我们还是不要破坏.gitignore的规则,这个时候,可以添加一条例外规则 :

# 排除所有.开头的隐藏文件
.*

# 不排除.gitignore
!.gitignore

把指定文件排除在.gitignore规则外的写法就是!+文件名.所以只需把例外文件添加进去即可.

给命令配置别名

在我们使用Git期间,有些命令敲的时候着实让人太头疼了,幸运的是git支持对命令行进行简化!

举个栗子,将git status简化为git st,对应的命令为 :

git config --global alias.st status

--global参数是全局参数,也就是这些命令在这台电脑的所有Git仓库下都有用.如果不加,那么只针对当前仓库起作用.

接下来我们看看效果 :

git 连接远程,Git的原理和使用,git
再来配置一个log --pretty=oneline -abbrev-commit,显示日志信息

git 连接远程,Git的原理和使用,git
不过,我个⼈还是不推荐⼤家现在去使⽤它,等大家对命令很熟悉了,再去简化⾃⼰的⼯作吧,尽快适应 Git。


总结

(本章完!)文章来源地址https://www.toymoban.com/news/detail-726734.html

到了这里,关于Git--远程操作的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用Git命令将本地仓库和远程仓库连接

    本地仓库与远程仓库关联 首先熟悉一下基本操作 使用Git命令将本地仓库和远程仓库连接有两种方法。 第一种: 远程(Github)先建立一个空的仓库,然后执行以下指令: 由于远程库是空的,我们第一次推送 master 分支时,加上了 -u 参数,Git不但会把本地的 master 分支内容推送的远

    2024年02月09日
    浏览(47)
  • 使用 SSH 方式实现 Git 远程连接GitHub

    git是目前世界上最先进的分布式版本控制系统,相比于SVN,分布式版本系统的最大好处之一是在本地工作完全不需要考虑远程库的存在,也就是有没有联网都可以正常工作!当有网络的时候,再把本地提交推送一下就完成了同步,非常方便,故而也得到了广大IT工作者的青睐

    2024年01月18日
    浏览(63)
  • 学会使用git,快乐编写代码(常用命令和远程连接)

    相信不管是前端还是后端的小伙伴在开发的时候都要使用到我们的代码管理工具 git ,当然了 非计算机 的友友们也是会用到的,方便管理我们的项目(文件) 版本 ,不用再去来回复制粘贴啦。一般分可视化( sourceTree )和命令行( git Bash命令行 )两种方式。今天就给大家梳

    2024年02月03日
    浏览(46)
  • VSCode 中快速使用git远程库操作

    以下内容主要为自我学习笔记类别,内容可能相对繁琐 一、环境安装                 1、环境自行安装         2、推荐安装插件Git Graph,能够图形化的查看库的操作记录 二、远程库         1、在GitHub或者gitee官网注册账号后直接新建一个库,不做过多描述        

    2024年02月05日
    浏览(27)
  • IDEA连接Github⭐️使用Git工具上传本地文件到远程仓库

    环境准备         已安装IDEA开发工具,Git版本管理工具,已注册GitHub账号         需要先准备好这些环境,可以自行搜索教程,下面的安装是基于这里的环境上操作的 目录 一、需要提供SSH公钥 ​二、Github配置SSH公钥 ​三、IDEA配置连接 四、连接成功后,可以上传本地文

    2024年01月19日
    浏览(51)
  • 【Git原理与使用】-- 基本操作

    目录 添加文件 查看objects中的文件 小结 修改文件 版本回退 回退的回退 小结 撤销修改 情况一:对于工作区的代码,还没有 add 情况二:已经 add ,但没有 commit 情况三:已经 add ,并且也 commit 了 小结  删除文件 #: 首先引入一个未进行任何操作的 ./git 内部情况         我

    2024年02月11日
    浏览(29)
  • 【Linux】如何使用git命令行与远程仓库建立连接(以Gitee为例)

    目录 01.创建仓库 开源 初始化​编辑 设置模版 ​编辑 02.下载仓库到本地 03.提交贡献到远程仓库 首先在Gitee网站上登录你的账户,并创建一个新的仓库,输入仓库名称后就会自动生成仓库路径 可以选择你的仓库是否开源。 开源仓库 开源仓库是指存放在公共平台上的代码仓库

    2024年04月15日
    浏览(48)
  • Git的原理与使用(一):Git的基本操作(包含:版本回退)

    Git是一个版本控制器 在这里我们重点介绍Linux操作系统下的Git的使用 因为在未来的开发过程中Linux操作系统的使用更为频繁 而且Git最初就是在Linux操作系统下面开发的 1.git命令与git help(Git下的\\\"man手册\\\") 首先我们可以使用git命令来查看我们有没有安装Git 如果结果是这样的 说明

    2024年02月05日
    浏览(31)
  • C#中使用git将项目代码上传到远程仓库的操作

    1、登录GitHub官网,注册登录账号后,点击创建仓库  2、仓库名称命名,如下所示:     3、创建成功如下所示:获得https协议(https://github.com/chentiebo/repo1.git)   1、在电脑D盘创建文件pr(注意:不能出现中文目录),如下所示:   2、在D盘pr文件中创建本地仓库     3、当出

    2024年02月06日
    浏览(38)
  • git操作--->在远程删除了某个分支,但本地使用git branch -r的时候还是会显示某个分支存在是什么原因

    💕又迷糊了哈哈,以为自己命令执行错了,结果可能是缓存的原因:💕 😂如果你发现使用 git branch -r 命令显示了一个远程没有的分支,这可能是由以下几个原因造成的:😂 缓存的远程分支信息: 当你克隆一个仓库或者与远程仓库交互时,Git 会在本地保存远程分支的缓存信

    2024年02月19日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包