Git仓库的创建

Git服务器准备

假设Git所在服务器为Ubuntu系统,IP地址10.17.1.5。

一. 准备运行git服务的git用户,这里用户名就直接设定为git。

1. 创建一个git用户组,并创建git用户。

sudo groupadd git

sudo useradd git -g git

2. 创建git用户目录,以及密钥认证文件。

sudo mkdir -p /home/git/.ssh

sudo touch /home/git/.ssh/authorized_keys

cd /home

sudo chown -R git:git git

3. 确保git用户的认证文件权限正确。

sudo chmod 700 /home/git/.ssh

sudo chmod 600 /home/git/.ssh/authorized_keys

4. 禁用git用户shell登录。

出于安全考虑,git用户不允许登录shell。

编辑/etc/passwd文件,找到类似下面的一行:

git:x:1001:1001:,,,:/home/git:/bin/bash

改为:

git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell

这样,git用户可以正常通过ssh使用git,但无法登录shell,为git用户指定的git-shell每次一登录就自动退出。

二. 安装git。

安装git:

sudo apt install git

三. 创建git仓库。

1. 先创建一个目录作为Git仓库。

Git仓库目录通常命名为*.git,假定是/data/git/demo.git。

创建目录:

mkdir -p /data/git/demo.git

将目录所有者改为git用户:

cd /data/git

sudo chown -R git:git demo.git

2. 初始化Git仓库。

cd /data/git

sudo git init --bare demo.git

四. 为使用Git服务的用户创建密钥。

1. 生成密钥文件。

假设为张三、李四两名开发者分别准备密钥。

使用ssh-keygen工具为张三创建密钥对:

ssh-keygen -t rsa

创建密钥的过程中,一路点击回车就可以了,不需要填任何东西。

生成的公钥和私钥文件默认存储在用户目录下的.ssh目录中。

例如linux系统中root用户执行ssh-keygen生成的密钥文件位于:

/root/.ssh

windows系统中dancen用户生成的密钥文件位于:

C:\Users\dancen\.ssh

其中,id_rsa.pub为公钥,id_rsa为私钥,这里重命名密钥文件为:

id_rsa_zhangsan.pub

id_rsa_zhangsan

再次使用ssh-keygen工具为李四创建密钥对:

ssh-keygen -t rsa

然后重命名密钥文件为:

id_rsa_lisi.pub

id_rsa_lisi

2. 添加公钥至Git服务器的git用户认证文件中。

把公钥添加到git服务器上git用户的认证文件/home/git/.ssh/authorized_keys。

依次把id_rsa_zhangsan.pub、id_rsa_lisi.pub的内容添加到authorized_keys中,authorized_keys内容如下:

# zhangsan

ssh-rsa ****** ad\zhangdan@gzy-20210126-02

# lisi

ssh-rsa ****** ad\zhangdan@gzy-20210126-02

3. 将私钥提供给使用Git服务的用户。

分别将id_rsa_zhangsan.pub、和id_rsa_lisi.pub提供给使用Git服务的zhangsan和lisi。

Git客户端准备

一. 在客户端部署Git私钥。

使用Git服务的用户需要将Git服务器管理员提供的私钥文件妥善存储。

以zhangsan为例,假设其使用windows系统,通常将私钥文件存储到用户目录下的.ssh目录:

C:\Users\zhangsan\.ssh

用户在使用git时默认匹配的私钥文件为:

C:\Users\zhangsan\.ssh\id_rsa

如果私钥文件没有部署在默认位置,或者没有使用默认名称id_rsa,则用户在使用git时需要临时指定私钥文件。

此时,为了避免每次都临时指定密钥文件,可通过客户端的配置文件config明确指定私钥文件和服务器的对应关系。

config文件位置:

C:\Users\zhangdan\.ssh\config

在config中添加如下内容:

Host 10.17.1.5

    HostName 10.17.1.5

    User git

    IdentityFile ~/.ssh/id_rsa_zhangsan

如此,当用户通过ssh连接10.17.1.5服务器时,将自动使用id_rsa_zhangsan作为私钥。如果存在多个ssh服务器和私钥映射关系,则在config中继续添加配置即可。

二. 克隆git仓库。

1. 安装git。

1. 配置git用户身份。

git config --global user.name "zhangsan"

git config --global user.email "zhangsan@ad.com"

解释

git config --global user.name "Your Name":这条命令设置全局的 Git 用户名,所有的 Git 提交都会使用这个名字。

git config --global user.email "email@example.com":这条命令设置全局的 Git 用户电子邮件地址,所有的 Git 提交都会使用这个电子邮件地址。

2. 克隆git仓库。

git clone git@10.17.1.5:/data/git/demo.git

Vue3 + TypeScript (简称V3TS) 是结合了 Vue.js 的下一代版本和 TypeScript 这种强类型的 JavaScript 变体来构建应用的技术组合。手撕甘特图通常是一个时间线视图,用于展示项目的进度、任务分配或计划安排。在 V3TS 中制作甘特图,你可以遵循以下步骤: 1. **环境配置**:首先,确保已安装 Vue CLI v3,并设置支持 TypeScript。可以使用命令 `vue create` 创建一个新的 Vue3项目并选择 TypeScript 作为配置。 2. **引入库**:由于甘特图需要数据驱动,你可能需要引入第三方库如 `antv-g6` 或者 `vis` 来处理图形绘制。通过npm或yarn添加依赖。 3. **声明组件**:创建 TypeScript 类型化的组件,例如 `TaskItem.vue`,其中包含任务对象的数据类型 (`Task`) 和方法 (`generateGanttGraph()`). ```typescript import { Component, Prop } from 'vue'; interface Task { id: number; name: string; start: Date; end: Date; } @Component({ // ... }) export default class TaskItem extends Vue { @Prop() task: Task; generateGanttGraph(): void { // 使用甘特图库生成图表逻辑 } } ``` 4. **数据绑定**:在组件内部或父组件中,管理任务列表 (`Task[]`) 并将其绑定到视图上,以便更新显示。 5. **渲染图表**:在组件的模板部分,利用甘特图库提供的 API 渲染任务节点,传递任务数据。 6. **事件监听**:为了动态调整和交互,可以添加事件监听器,比如拖拽、点击事件等。 7. **样式定制**:用 CSS 样式美化甘特图,使其符合项目的视觉风格。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值