当前位置: 首页 > news >正文

Git远程控制

文章目录

    • 1. 创建仓库
      • 1.1 Readme
      • 1.2 Issue
      • 1.3 Pull request
    • 2. 远程仓库克隆
    • 3. 推送远程仓库
    • 4. 拉取远程仓库
    • 5. 配置Git
      • .gitignore
      • 配置别名

使用GitHub可以,采用Gitee也行

1. 创建仓库

1.1 Readme

Readme文件相当于这个仓库的说明书,gitee会初始化2两份,一个中文、一个英文

image-20240523152528105

1.2 Issue

我们仓库开源之后,其他人看我们的仓库代码,如果发现一些问题或者有一些好建议,就可以通过Issue进行交流

image-20240523153538634

1.3 Pull request

在实际中,开发的分支,不会直接mergemaster分支,而是开发者提一个pull request合并申请单,说明合并原因

当审批者同意之后,才会进行merge操作

image-20240523153814853

2. 远程仓库克隆

最常用的就是ssh或者是https进行克隆:

image-20240523154000495

HTTPS:直接克隆即可git clone url

Tips:

不能在本地仓库路径下克隆

SSH
ssh采用的是公钥加密的形式,需要将本地服务器的公钥放到git服务器上进行管理

在用户的主目录查看是否有.ssh目录,查看是否有id_rsaid_rsa_pub这两个文件,如果没有,到主目录采用指令

ssh-keygen -t rsa -C "email"进行创建(中间会有要输入的内容,不用管,直接回车即可)

image-20240523155520676

然后查看id_rsa.pub内容,直接复制到gitee

image-20240523155712143

配置完毕之后,即可采用ssh克隆

克隆完毕之后,可采用git remote -v查看详细信息

fetch表示远端拉取,push表示推送到远端

image-20240523154623655

3. 推送远程仓库

image-20240523160340314

有了本地仓库之后,首先就是查看相关的配置项git config -l

image-20240523160814251

从远端仓库克隆到本地之后,commit提交之后,查看状态,发现还需要push操作,即推送到远程仓库

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

远端主机名可采用git remote -v查看,一般是origin

如果本地分支名和远端分支名一样,可以直接git push origin 分支名

image-20240523161821646

4. 拉取远程仓库

如果远程仓库版本比本地的新,本地可采用git pull进行拉取

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

pull的操作采用的是拉取+合并

5. 配置Git

.gitignore

初始化仓库的时候,会有一个.gitignore文件

image-20240523162638807

设置该文件可以忽略不想传到远端的文件类型,这样就和直接忽略这些类型的文件

.gitignore文件要在git工作区的根目录

示例:

# 忽略的文件
*.exe
*.sln# 不忽略某个要忽略的类型文件
!test.exe

查看某个文件为什么被忽略

git check-ignore -v a.exe

image-20240523163744817

配置别名

如果觉得某些指令输入麻烦,可采用取别名的方式

git config [--global] alias.别名 指令

image-20240523164523481

查看当前配置的别名:

git config --get-regexp alias

删除别名:

git config [--global] --unset alias.别名

image-20240523164807053

http://www.lryc.cn/news/351541.html

相关文章:

  • 怎样从SQL中分析和提取访问的字段信息?| OceanBase实践
  • MySQL 服务无法启动
  • Python贪心算法
  • 牛客网刷题 | BC85 牛牛学数列3
  • quartz定时任务
  • Python基础学习笔记(五)——选择结构与循环结构
  • Vue插槽solt如何传递具名插槽的数据给子组件?
  • 小程序-收货地址管理模块实现
  • 【星海随笔】微信小程序(三)
  • pip(包管理器) for Python
  • Ubuntu上安装Maven
  • java中使用svnkit实现文件的版本管理
  • 了解 Linux 网络卡绑定:提高网络性能与冗余性
  • 2024年618购物狂欢节即将来袭!精选五款超值入手数码好物!
  • 中国AI独角兽资本大冒险
  • 项目十二:简单的python基础爬虫训练
  • OpenGL学习入门及开发环境搭建
  • three.js能实现啥效果?看过来,这里都是它的菜(08)
  • SpringBoot(九)之整合mybatis
  • 【实战教程】使用Spring AOP和自定义注解监控接口调用
  • 算法学习之:Raft-分布式一致性/共识算法
  • 彩色进度条(C语言版本)
  • C#和C++有什么区别?
  • 微信小程序报错:notifyBLECharacteristicValueChange:fail:nodescriptor的解决办法
  • 富格林:可信攻略阻止遭遇欺诈
  • 搭建淘宝扭蛋机小程序:技术选型与最佳实践
  • 【线性回归】梯度下降
  • GMSL图像采集卡,适用于无人车、自动驾驶、自主机器、数据采集等场景,支持定制
  • docker不删除容器更改其挂载目录
  • K8s Service 背后是怎么工作的?