热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

git使用_GIT的安装与使用

GIT的安装与使用1.介绍Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git是LinusTorvalds为了帮助管理Linux内核开发

GIT的安装与使用

1.介绍

Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

Git 与 SVN 区别

a、Git 是分布式的,SVN 不是:这是 Git 和其它非分布式的版本控制系统,例如 SVN,CVS 等,最核心的区别。

b、Git 把内容按元数据方式存储,而 SVN 是按文件:所有的资源控制系统都是把文件的元信息隐藏在一个类似 .svn、.cvs 等的文件夹里。

c、Git 分支和 SVN 的分支不同:分支在 SVN 中一点都不特别,其实它就是版本库中的另外一个目录。

d、Git 没有一个全局的版本号,而 SVN 有:目前为止这是跟 SVN 相比 Git 缺少的最大的一个特征。

e、Git 的内容完整性要优于 SVN:Git 的内容存储使用的是 SHA-1 哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。

2.安装

需要下载两个软件,分别是:git和tortoiseGit。

1 下载与安装git

通过https://git-scm.com/网站下载。

2f10a0d9f7b525363d930cf07f680197.png

使用许可声明

65065edadee150de9ad0e0adaa5e899e.png

  点击“Next”进入下图页面:

选择安装路径

f22c65536c15cb77508639fe10c9e610.png

  在输入框内输入想要安装到的本机路径,也就是实际文件夹位置,或点击“Browse...”选择已经存在的文件夹,然后点击“Next”按钮继续,进入下图界面:

选择安装组件

3277f4f87048480c15ace3faee4e840e.png

  上图红框内的选项是默认勾选的,建议不要动。绿色框1是决定是否在桌面创建快捷方式的。绿色框2是决定在所有控制台窗口中使用TrueType字体和是否每天检查Git是否有Windows更新的。这些根据自己需要选择。

  点击“Next”按钮进入下图界面:

选择开始菜单页

1929f3d5a7636a327d09d6935e4a175e.png

  这个界面是创建开始菜单中的名称,不需要修改,直接点“Next”按钮继续到下图的界面:

选择Git文件默认的编辑器

9025b1cd8c6e4036d510b999fdbdce9e.png

  这个页面是在选择Git文件默认的编辑器,很少用到,所以默认Vim即可,直接点“Next”按钮继续到下图的界面:

调整您的PATH环境

f2faf31cb7985bdb4a0f4394e774dbe4.png

  这个界面是调整您的PATH环境。

  第一种配置是“仅从Git Bash使用Git”。这是最安全的选择,因为您的PATH根本不会被修改。您只能使用 Git Bash 的 Git 命令行工具。但是这将不能通过第三方软件使用。

  第二种配置是“从命令行以及第三方软件进行Git”。该选项被认为是安全的,因为它仅向PATH添加了一些最小的Git包装器,以避免使用可选的Unix工具造成环境混乱。
您将能够从Git Bash,命令提示符和Windows PowerShell以及在PATH中寻找Git的任何第三方软件中使用Git。这也是推荐的选项。

  第三种配置是“从命令提示符使用Git和可选的Unix工具”。警告:这将覆盖Windows工具,如 “ find 和 sort ”。只有在了解其含义后才使用此选项。

  我选择推荐的选项第二种配置,点击“Next”按钮继续到下图的界面:

选择HTTPS后端传输

d6000391a9eb947cae3e964dd9601503.png

  这个界面是选择HTTPS后端传输。

  第一个选项是“使用 OpenSSL 库”。服务器证书将使用ca-bundle.crt文件进行验证。这也是我们常用的选项。

  第二个选项是“使用本地 Windows 安全通道库”。服务器证书将使用Windows证书存储验证。此选项还允许您使用公司的内部根CA证书,例如通过Active Directory Domain Services 。

  我使用默认选项第一项,点击“Next”按钮继续到下图的界面:

配置行尾符号转换

f5fa940da5a9e5c1c7cb8d9048c1cbae.png

  这个界面是配置行尾符号转换。

  第一个选项是“签出Windows风格,提交Unix风格的行尾”。签出文本文件时,Git会将LF转换为CRLF。提交文本文件时,CRLF将转换为LF。对于跨平台项目,这是Windows上的推荐设置(“ core.autocrlf”设置为“ true”)

  第二个选项是“按原样签出,提交Unix样式的行尾”。签出文本文件时,Git不会执行任何转换。 提交文本文件时,CRLF将转换为LF。对于跨平台项目,这是Unix上的建议设置(“ core.autocrlf”设置为“ input”)

  第三种选项是“按原样签出,按原样提交”。当签出或提交文本文件时,Git不会执行任何转换。不建议跨平台项目选择此选项(“ core.autocrlf”设置为“ false”)

  我选择第一种选项,点击“Next”按钮继续到下图的界面:

配置终端模拟器以与Git Bash一起使用

af78e313eeca94815cf6df6ca0165359.png

  这个界面是配置终端模拟器以与Git Bash一起使用。

  第一个选项是“使用MinTTY(MSYS2的默认终端)”。Git Bash将使用MinTTY作为终端模拟器,该模拟器具有可调整大小的窗口,非矩形选择和Unicode字体。Windows控制台程序(例如交互式Python)必须通过“ winpty”启动才能在MinTTY中运行。

  第二个选项是“使用Windows的默认控制台窗口”。Git将使用Windows的默认控制台窗口(“cmd.exe”),该窗口可以与Win32控制台程序(如交互式Python或node.js)一起使用,但默认的回滚非常有限,需要配置为使用unicode 字体以正确显示非ASCII字符,并且在Windows 10之前,其窗口不能自由调整大小,并且只允许矩形文本选择。

  我选择默认的第一种选项,点击“Next”按钮继续到下图的界面:

配置配置额外的选项

1c1b54dea8250ef1b22eaf1c7b5153d8.png

  这个界面是配置配置额外的选项。

  第一个选项是“启用文件系统缓存”。文件系统数据将被批量读取并缓存在内存中用于某些操作(“core.fscache”设置为“true”)。 这提供了显著的性能提升。

  第二个选项是“启用Git凭证管理器”。Windows的Git凭证管理器为Windows提供安全的Git凭证存储,最显着的是对Visual Studio Team Services和GitHub的多因素身份验证支持。 (需要.NET Framework v4.5.1或更高版本)。

  第三个选项是“启用符号链接”。启用符号链接(需要SeCreateSymbolicLink权限)。请注意,现有存储库不受此设置的影响。

  我勾选默认的第一、第二选项,点击“Next”按钮继续到下图的界面:

配置实验选项

07952384864c76bdb172b544372a94d8.png

  这个界面是配置实验选项。

  启用实验性的内置添加 -i / -p。(新!)使用实验性的内置交互式add(“ git add -i”或“ git add -p”)。这使其速度更快(尤其是启动!),但尚未被认为是可靠的。

  默认不勾选,直接点击“Next”按钮继续到下图的安装进度界面:

安装进度指示

0525c918a387c947bba639be8fe2e7ff.png

  安装进度结束之后,会出现下图的完成Git安装向导界面:

安装完成

00fd80934b7ab6bb04ebab60b3820340.png

  在这个界面,可以勾选是否启动启动Git Bash和是否查看发行说明,然后点“Finish”按钮退出安装界面。

2 下载与安装tortoiseGit

通过https://tortoisegit.org/download/网站下载。

双击安装程序 TortoiseGit-1.8.12.0-64bit.msi. 弹出安装向导界面:

cc90c9deb27ea7c32f417cbb52e8f64e.png

 直接点击下一步(Next)即可

e943db49e4f8b545c8163e2c02cfb409.png

下 一步,选择SSH客户端. 可以选择 TortoiseGitPlink(位于TortoiseGit安装目录/bin 下), 也可以选择 Git 默认的SSH客户端,位于 Git安装目录/bin/ssh.exe(如果配置了 Path,那直接是 ssh.exe)

4ad870cd1fc8149dd65d2f505f44d9fc.png

接着是选择安装目录,可以保持默认,或者安装到开发环境目录下,安装的程序组件保持默认即可:

43fdf4f21a5c29e58cd0dc8768dfc2fb.png

下一步到确认安装界面,点击 Install按钮安装即可,如下图所示

9f26623a8eb554f40088652ac1ede22c.png

安装完成,点击 Finish 按钮即可:

ce95e0cd988fb414897c73a32d542a5f.png

如果以前有老版本,则选择覆盖,关闭旧程序并尝试重启即可

安装好TortoiseGit之后,鼠标右键,发现会多了几项关于TortoiseGit的选项

88308d8b1856132572e5e1dfa8f40c03.png

语言包安装图解(直接点下一步即可):

配置

1.首先,请选定一个存放Git项目的目录,这样管理方便. 如: D:WorkspacesWorkspace01 , 然后在资源管理器中打开.

2. 在空白处点击鼠标右键, 选择 --> TortoiseGit --> Settings, 然后就可以看到配置界面:

4b9bcb80fc1e3c07b87206ae8ca0fba6.png

3. 选中General,在右边的 Language中选择中文. 不勾选自动升级的复选框,可能还需要指定 Git.exe 文件的路径,如 "D:DevlopProgramsGitbin". 完成后,点击应用,确定关闭对话框.(当然,你也可以继续使用英文)

4. 再次点击鼠标右键,可以看到弹出菜单中已经变成中文. 原来的 Settings 变成 设置; Clone 变为 克隆.

5. 配置右键菜单. 在设置对话框中,点选左边的"右键菜单",然后在右边将所有的复选框都去掉,这样右键菜单显得比较干净:

38fa4885e710fdc892835d26348083a5.png

6.设置记住密码

!!!!! 密码会明文保存在 C:甥敳獲Administrator.git-credentials 这种文件中, 请小心使用.

进入设置, 点选左边的Git标签.可以发现,右边可以配置用户的名字与Email信息. 如下图所示:

397188313fac9ff08a5a6c97d1719c2a.png

因为当前还没有本地项目,所以 “编辑本地 .git/config(L)” 按钮处于灰色不可用状态,如果在某个本地Git项目下打开配置对话框,那么这个按钮就可用,然后就可以编辑此项目的一些属性。

点击 “编辑全局 .git/config(O)”按钮,会使用记事本打开全局配置文件,在全局配置文件中,在后面加上下面的内容:

[credential]

helper = store

完成后保存,关闭记事本,确定即可。

则当你推送项目到GitHub等在线仓库时,会记住你输入的用户名和密码(这里不是用户的姓名和Email哦.)

如果你编辑的是 本地 .git/config(L),其实这个翻译为本地有点问题,应该叫局部,也就是在某个项目下面设置,只对此项目有效.配置是一样的.

用户名: 就是你注册的账号,如: tiemaocsdn

密码: 当然是注册时填写的密码: *********

Email: 是你的联系邮箱,给别人联系你时使用

用户姓名/昵称: 可以随便取,但最好有点意义

3.常用操作

git clone(克隆)

首次获取项目的时候需要clone,在需要放置项目的目录中右击,然后选择clone

c2da313ec6a27f0c798cf5cbd64501eb.png

然后在弹出的框中填写URL地址(这个地址就是项目存放远程git地址),Directory就是保存的目录地址,默认是当前目录,然后选择ok。

70b54000385da9e93ddb669b8b93fab9.png

克隆完成

edb6504183a930b3ce131efae70e48cb.png

git commit(提交)

这里的提交只是提交到本地分支,后面还需要推送到远程分支

右击项目根目录,然后选择git commit,->所指向的就是当前的分支

083078a73c464115b070a52b41983cbe.png

填写备注,然后选择要提交的内容,然后点击commit

2e812ece64f7657d3b9e09add67971e6.png

提交完成

67baf23bd30b131bb55fa225c5c52ae2.png

push(推送)

提交到本地分支的内容,我们需要推送到远程分支

右击项目根目录,选择tortoiseGit,然后选择push

14e5c319c5090ec181a21c62c6a52b58.png

选择远程分支,如果远程分支没有的,可以自己填写一个,然后推送完成后就会在远程创建一个对应的远程分支。

0cb28a983df8ed90f047ff66aeedffe6.png

推送完成

c266a98d575cc3de3e653547a3fe5bbe.png

pull(拉取)

更新项目内容时,需要通过pull拉取

右击项目根目录,选择tortoiseGit,然后选择pull

eb6afc57bb5e50905b12ecb66570564a.png
b0d7be6568eebaa7b5f72f9c5fd1a7d0.png

拉取完成

dfc8de09e5abfe65a16310dad1c717f7.png

fetch(同步)

git fetch是将远程主机的最新内容拉到本地,用户在检查了以后决定是否合并到工作本机分支中

右击项目根目录,选择tortoiseGit,然后选择fetch

3ee2554d89c6de04997bf9b095fb9d4c.png
1fbb82f4ab2a94aac2890388e188bc90.png

fetch 与pull区别

git fetch是将远程主机的最新内容拉到本地,用户在检查了以后决定是否合并到工作本机分支中

而git pull 则是将远程主机的最新内容拉下来后直接合并,即:git pull = git fetch + git merge,这样可能会产生冲突,需要手动解决

switch/checkout(切换与检出)

当我们需要更换一个分支的时候,我们需要使用switch/checkout来做,可以更换到本地分支也可以更换到远程分支

右击项目根目录,选择tortoiseGit,然后选择switch/checkout

308f8f6f394a9d481b061586a3390be0.png

在弹出的框中可以选择本地和远程的分支,带有remotes的是远程分支,如果想获取最新的所有远程分支,在做switch/checkout操作之前,请先fetch同步一下,让远程分支信息保持为最新的。

05f3a20217cb026093abcee455aa2bd9.png

create branch(创建分支)

项目中需要开发新任务时,通常需要自己创建一个新的分支

右击项目根目录,选择tortoiseGit,然后选择create branch

08075c580d5e25b6ceee3c25643aedc6.png

在弹出框中填写分支名,然后选择基于的分支(也就是说这个新分支是基于哪一个原有的分支创建的)

bc0c605e91c636fbe45096bae2b1658c.png



推荐阅读
  • 本文探讨了如何在Classic ASP中实现与PHP的hash_hmac('SHA256', $message, pack('H*', $secret))函数等效的哈希生成方法。通过分析不同实现方式及其产生的差异,提供了一种使用Microsoft .NET Framework的解决方案。 ... [详细]
  • 本文详细介绍了IBM DB2数据库在大型应用系统中的应用,强调其卓越的可扩展性和多环境支持能力。文章深入分析了DB2在数据利用性、完整性、安全性和恢复性方面的优势,并提供了优化建议以提升其在不同规模应用程序中的表现。 ... [详细]
  • 本文基于对相关论文和开源代码的研究,详细介绍了LOAM(激光雷达里程计与建图)的工作原理,并对其关键技术进行了分析。 ... [详细]
  • 数据库内核开发入门 | 搭建研发环境的初步指南
    本课程将带你从零开始,逐步掌握数据库内核开发的基础知识和实践技能,重点介绍如何搭建OceanBase的开发环境。 ... [详细]
  • 本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ... [详细]
  • 扫描线三巨头 hdu1928hdu 1255  hdu 1542 [POJ 1151]
    学习链接:http:blog.csdn.netlwt36articledetails48908031学习扫描线主要学习的是一种扫描的思想,后期可以求解很 ... [详细]
  • 在现代网络环境中,两台计算机之间的文件传输需求日益增长。传统的FTP和SSH方式虽然有效,但其配置复杂、步骤繁琐,难以满足快速且安全的传输需求。本文将介绍一种基于Go语言开发的新一代文件传输工具——Croc,它不仅简化了操作流程,还提供了强大的加密和跨平台支持。 ... [详细]
  • 网络运维工程师负责确保企业IT基础设施的稳定运行,保障业务连续性和数据安全。他们需要具备多种技能,包括搭建和维护网络环境、监控系统性能、处理突发事件等。本文将探讨网络运维工程师的职业前景及其平均薪酬水平。 ... [详细]
  • 使用Python在SAE上开发新浪微博应用的初步探索
    最近重新审视了新浪云平台(SAE)提供的服务,发现其已支持Python开发。本文将详细介绍如何利用Django框架构建一个简单的新浪微博应用,并分享开发过程中的关键步骤。 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 简化报表生成:EasyReport工具的全面解析
    本文详细介绍了EasyReport,一个易于使用的开源Web报表工具。该工具支持Hadoop、HBase及多种关系型数据库,能够将SQL查询结果转换为HTML表格,并提供Excel导出、图表显示和表头冻结等功能。 ... [详细]
  • 本文将详细介绍如何在没有显示器的情况下,使用Raspberry Pi Imager为树莓派4B安装操作系统,并进行基本配置,包括设置SSH、WiFi连接以及更新软件源。 ... [详细]
  • CentOS 7.6环境下Prometheus与Grafana的集成部署指南
    本文旨在提供一套详细的步骤,指导读者如何在CentOS 7.6操作系统上成功安装和配置Prometheus 2.17.1及Grafana 6.7.2-1,实现高效的数据监控与可视化。 ... [详细]
  • TortoiseSVN与VisualSVN Server的安装及基本操作指南
    本文详细介绍了如何安装VisualSVN Server以及TortoiseSVN客户端,并提供了基本的操作步骤,包括配置仓库、用户管理及权限设置等关键环节。 ... [详细]
  • NFS(Network File System)即网络文件系统,是一种分布式文件系统协议,主要用于Unix和类Unix系统之间的文件共享。本文详细介绍NFS的配置文件/etc/exports和相关服务配置,帮助读者理解如何在Linux环境中配置NFS客户端。 ... [详细]
author-avatar
皮皮美2_160
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有