版本控制服务器——Git

简介: Git 是一款开源的分布式版本控制系统,可以有效、高效的处理从很小到非常大的项目版本管理。Git 是 Linux Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源代码的版本控制软件。 官网:https://git-scm.com/

版本控制服务器——Git



一、Git 简介


1.Git 特点

2.版本控制器

3.Git 工作流程

4.Git 的几个核心概念


二、基于 Linux 部署 Git 服务器


1.Git 使用

2.验证


三、使用 GitHub


1.注册账号

2.在客户端上生成密钥对

3.导入公钥密钥到 GitHub

4.创建储存空间

5.将本地项目上传到 GitHub

6.查看 GitHub 文件

7.同步远程仓库的最新状态到本地仓库


一、Git 简介



Git 是一款开源的分布式版本控制系统,可以有效、高效的处理从很小到非常大的项目版本管理。Git 是 Linux Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源代码的版本控制软件。 官网:https://git-scm.com/


1.Git 特点


优点:


  • 适合分布式开发,强调个体;
  • 公共服务器压力和数据量都不会太大;
  • 速度快、灵活;
  • 离线工作;


缺点:


  • 代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息;
  • 权限控制不友好;如果需要对开发者限制各种权限的建议使用 SVN。


2.版本控制器


简单来说就是用来存放代码的。


  • 版本控制器分为:SVN(集中式的版本控制器),Git(分布式的版本控制器)


3.Git 工作流程


简单来说就是在工作区上写代码,当要提交时,需要先将代码上传到暂存区,接着才可以将代码提交到本地仓库,当提交到本地仓库后,还可以将代码上传到远程仓库,来供其它人访问。


  • Git 的几种状态: 已暂存、已修改、已提交。


4.Git 的几个核心概念


  • 工作区:就是你平常存放项目代码的地方。
  • 暂存区:用于临时存放你的改动,事实上它只是一个文件,保存即将提交到文件列表信息。
  • 本地仓库(版本库):就是安全存放数据的位置,这里面都是你提交的所有代码信息。
  • 远程仓库:就是托管代码的服务器,类似于 FTP 服务,能够共享数据。



image.png


二、基于 Linux 部署 Git 服务器



准备工作


image.png


image.png

  • 注意:CentOS 7 上默认已经安装好了 Git 服务。


1.Git 使用


创建用户


[root@Git-Server ~]# useradd git                              # 创建 Git 用户
[root@Git-Server ~]# echo "123456" | passwd git --stdin                   # 创建密码
[root@Git-Server ~]# su - git                               # 切换到 Git 用户


创建仓库


[git@Git-Server ~]$ mkdir project                             # 创建目录. 用于存放长仓库
[git@Git-Server ~]$ cd project/
[git@Git-Server project]$ git init --bare                         # 初始化仓库


image.png


2.验证


在 Client 主机上创建工作目录


[root@Client ~]# mkdir git


拉取库到本地


[root@Client ~]# cd git/
[root@Client git]# git clone git@192.168.1.1:/home/git/project                # 克隆
正克隆到 'project'...
git@192.168.1.1's password:                                 # 输入 Git 用户的密码
warning: 您似乎克隆了一个空版本库。
[root@Client git]# ls                                   # 查看项目
project


本地给新项目添加文件


[root@Client git]# cd project/                                # 进入项目路径
[root@Client project]# touch 1.txt                              # 创建测试文件


添加到暂缓区


[root@Client project]# git add .                              # 当前目录内容都会添加


查看文件状态


[root@Client project]# git status


image.png


提交到本地仓库


[root@Client project]# git commit -m "Test"                       # -m 选项是说明信息


image.png


配置账号和邮件


[root@Client project]# git config --global user.name "ZhangSan"
[root@Client project]# git config --global user.email "ZhangSan@163.com"


重新提交修改到本地仓库


[root@Client project]# git commit -m 'Test'


image.png


确认本地仓库和远程仓库的状态是否正常


[root@Client project]# git remote add origin git@192.168.1.1:/home/git/project.git
fatal: 远程 origin 已经存在。


把本地仓库代码推送到远程仓库


[root@Client project]# git push origin master


image.png


三、使用 GitHub



GitHub 是一个面向开源及私有软件项目的托管平台,因为只支持 Git 作为唯一的版本仓库格式进行托管,所以故名为 GitHub。


1.注册账号


首先在官网上注册一个账号:https://github.com/


image.png


2.在客户端上生成密钥对


[root@Client ~]# ssh-keygen -t rsa                      # 创建密钥对 (连敲三次回车即可)
[root@Client ~]# cat .ssh/id_rsa.pub                    # 查看公钥


3.导入公钥密钥到 GitHub


image.png


登录验证


[root@Client ~]# ssh -T git@github.com                        # 需要联网状态
...
Are you sure you want to continue connecting (yes/no)? yes
...
Hi ChenZhuang1217! You've successfully authenticated, but GitHub does not provide shell access.


4.创建储存空间


image.png


5.将本地项目上传到 GitHub


[root@Client ~]# mkdir Test
[root@Client ~]# cd Test/
[root@Client Test]# echo "This is Test" > README.md
[root@Client Test]# git init
初始化空的 Git 版本库于 /root/Test/.git/
[root@Client Test]# git add README.md 
[root@Client Test]# git commit -m "First Commit"
[root@Client Test]# git remote add origin git@github.com:ChenZhuang1217/Test.git
fatal: 远程 origin 已经存在。
[root@Client Test]# git push -u origin master


6.查看 GitHub 文件


image.png


7.同步远程仓库的最新状态到本地仓库


在 GitHub 创建新的文件


image.png

image.png

image.png


在本地仓库中拉取远程仓库的文件


[root@Client Test]# git pull -u origin master


image.png

相关文章
|
8天前
|
存储 开发工具 数据安全/隐私保护
「Mac畅玩鸿蒙与硬件9」鸿蒙开发环境配置篇9 - 使用 Git 进行版本控制
在 HarmonyOS 项目开发中,Git 版本控制可以帮助开发者规范地管理代码变更,确保协作流程顺畅。本篇将详细介绍从创建项目、提交代码到 Git 远程仓库,再到修改、推送更新的完整操作流程,重点演示如何使用 Git 和 GitHub 进行身份验证和版本管理。
38 3
「Mac畅玩鸿蒙与硬件9」鸿蒙开发环境配置篇9 - 使用 Git 进行版本控制
|
1月前
|
Linux 开发工具 git
掌握 Git:版本控制的艺术
Git 是由 Linus Torvalds 开发的分布式版本控制系统,广泛用于代码管理和团队协作。其核心价值在于分布式特性、数据完整性和支持非线性开发。本文介绍 Git 的安装、仓库初始化、文件管理、分支管理、远程仓库操作及撤销操作等基础与高级技巧,助你掌握版本控制的艺术。通过实践,你将能更高效地利用 Git 进行代码管理和团队协作。
|
11天前
|
Ubuntu 开发工具 git
Git高手必备:掌握这些版本控制最佳实践,让你的代码管理效率翻倍!
【10月更文挑战第25天】使用 Git 进行版本控制是现代软件开发的重要部分。本文详细介绍了 Git 的安装、配置、基本操作、分支管理、冲突解决及常用命令,帮助开发者提高工作效率,确保代码质量和团队协作的顺利进行。通过合理使用 Git,可以有效管理代码变更,支持多人协作,并追踪历史记录。
41 4
|
11天前
|
开发工具 C# git
C#一分钟浅谈:Git 版本控制与 GitFlow 工作流
【10月更文挑战第22天】本文介绍了 Git 和 GitFlow 的结合使用,从基础概念到具体操作,涵盖了安装配置、基本命令、GitFlow 工作流的核心分支和流程示例。同时,文章还讨论了常见的问题和易错点,如忽略文件、冲突解决、回退提交和分支命名规范,并提供了代码案例。通过学习本文,读者可以更好地理解和应用 Git 及 GitFlow,提高团队协作效率。
40 1
|
1天前
|
开发工具 git
掌握Git版本控制,提升团队协作效率
掌握Git版本控制,提升团队协作效率
|
2月前
|
存储 Linux 开发工具
掌握版本控制的艺术:Git 技巧深度解析
在软件开发中,版本控制对于代码管理和团队协作至关重要。Git 作为最流行的分布式版本控制系统,凭借其强大的功能和灵活性成为开发者必备工具。本文深入探讨 Git 的高级技巧和最佳实践,包括交互式暂存、撤销提交、合并冲突处理等,帮助你更高效地使用 Git。通过遵循清晰的提交信息、保持提交原子性、利用分支开发等最佳实践,开发者可以更好地管理代码库,提升协作效率。
|
1月前
|
前端开发 开发工具 git
如何清理 docker 磁盘空间+修改 Gitea 服务器的 Webhook 设置+前端一些好学好用的代码规范-git hook+husky + commitlint
如何清理 docker 磁盘空间+修改 Gitea 服务器的 Webhook 设置+前端一些好学好用的代码规范-git hook+husky + commitlint
29 5
|
11天前
|
开发工具 git 开发者
|
1月前
|
编译器 开发工具 数据安全/隐私保护
Git——多人协作/版本控制,在一个gitee仓库下开发(Gitee版教程)手把手教学,包好用的!
本文提供了一个关于如何在Gitee上进行多人协作和版本控制的详细教程,包括新建和初始化仓库、克隆仓库、邀请好友共同管理仓库以及注意事项,旨在帮助用户顺利进行代码协作开发。
122 0
Git——多人协作/版本控制,在一个gitee仓库下开发(Gitee版教程)手把手教学,包好用的!
|
2月前
|
存储 Linux 开发工具
掌握 Git:版本控制的瑞士军刀
在软件开发中,版本控制对于代码管理和团队协作至关重要。Git 是一款由 Linus Torvalds 开发的分布式版本控制系统,广泛应用于各类项目。本文介绍了 Git 的基本原理、核心概念及常用命令,如初始化仓库 (`git init`)、克隆 (`git clone`)、提交 (`git commit`) 和合并 (`git merge`) 等。此外,还分享了编写清晰提交信息、使用分支开发和定期合并等最佳实践,帮助开发者更高效地使用 Git。
下一篇
无影云桌面