Git配置详细教程及基础使用方法,教你轻松学会git代码管理

前言:现在版本控制使用Git居多,如果你还不会的话,点进来,教你如何配置Git。

目录

一、Git介绍

二、Git安装配置

2.1 安装过程详解

2.2 检查安装是否成功

三、提交和更新代码到Git仓库

3.1 以Gitee为例

3.2 配置pycharm

💫3.2.1、选择Git安装路径

💫3.2.2、下载gitee插件

💫3.3.3、在pycharm中登录Gitee账号

3.3 上传本地项目到gitee仓库

💫3.3.1、菜单栏中点击VCS–>Share Project on Gitee

💫3.3.2、选择需要提交的代码

💫3.3.3、在Gitee查看项目

3.4、关于脚本颜色的说明

3.5、创建新的脚本文件

3.6、Git的三个按钮:下载、提交、上传

💫3.6.1、Update 拉取远程仓库最新代码

💫3.6.2、Commit 保存在本地仓库

💫3.6.3、查看历史提交版本

💫3.6.4、Push 上传到远程仓库

四、克隆Git仓库项目代码

4.1、获取项目链接

4.2、克隆项目代码

五、分支操作

5.1、创建分支

5.2、切换分支

5.3、合并分支

💫5.3.1、代码不冲突

💫5.3.2、代码有冲突

5.4、回溯之前的版本

六、生成版本号(tag标签)

6.1、选择版本

​6.2、创建标签

6.3、推送标签到远程仓库

6.4、在远程仓库查看标签

七、SSH公钥设置

7.1、HTTPS与SSH区别

7.2、创建公钥

7.3、添加公钥


一、Git介绍

Git和SVN类似,也是一个配置管理工具,而他们的区别之处在于:

  • SVN是集中管理
    1. 所有存档要保存在一台服务器上。
    2. 这里可能存在一个单点故障的问题,即一旦服务器出问题,所有人都不能读档。
  • Git是分布式管理
    1. 存档可以保存在本地
    2. 也可以保存在远程服务器
      1. GitHub:全球最大同性交友平台,但是服务器在国外,国内访问不稳定。
      2. Gitee:是国内的一个平台,访问比较稳定。但是要么开源,要么交钱。
      3. Gitlab:公司自己搭一个服务器
  • 二、Git安装配置

    2.1 安装过程详解

    💥1、百度搜索git,基本跳出来的第一个就是官网Git – Downloads (git-scm.com)

    💥2、以Windows为例,点击Download for Windows,如下图:

    💥3、点击Click here to download,即可下载最新版本Git-2.35.1.2-64-bit.exe,如下图:

     💥4、双击运行exe文件,许可协议,直接点击[next]到第二步。

     💥5、选择安装目录,默认即可,点击[next]到第三步。

    💥6、选择安装组件,按需勾选,点击[next]到第四步。

     💥7、选择开始菜单文件夹,默认即可,下面选项不要勾,点击[next]到第五步。

     💥8、选择Git默认编辑器,默认是vim编辑器,vim是纯命令行,操作有难度,我这里是改成了Notepad++,需要提前提前下载好才能点击next,同时在环境变量->系统变量->Path->编辑添加Notepad++的安装地址,如:C:\Program Files\notepad++,这样才能在Git Bash里面直接调用Notepad++,点击[next]到第六步。

    💥9、初始化项目(仓库)的主干名字,第一种是让Git自己选择,默认是master,第二种是我们自行决定,默认是main。我这里默认第一种,点击[next]到第七步。

    💥10、选择path环境变量设置,默认第二种,点击[next]到第八步。

     

    💥11、选择SSH可执行文件,默认第一个,点击[next]到第九步。

    💥12、选择HTTPS后端传输,默认第一个,点击[next]到第十步。

    💥13、配置行尾符合转换,默认第一个,点击[next]到第十一步。

    💥14、配置终端模拟器以与Git Bash一起使用,默认选择第一种,因为MinTTY功能比cmd多,点击[next]到第十二步。

    💥15、选择默认的‘git pull’行为,默认第一项即可,点击[next]到第十三步。

    💥16、选择一个凭证帮助程序,默认即可,点击[next]到第十四步。

    💥17、配置额外的选项,默认选择文件系统缓存,点击[next]到第十五步。

    💥18、配置实验性选项,默认都不勾选,点击Install。

    💥19、最后安装成功界面如下,点击Finnish即可。

    💥20、最后看一眼Git Bash界面,平时用的会比较多,如下:

    2.2 检查安装是否成功

    环境变量在我们安装过程中是已经配置好的,所以打开cmd窗口,输入git –version检查,能显示版本,说明安装成功。

    否则就需要检查环境变量是否配置成功,并需要手动配置,将安装文件的cmd文件路径C:\Program Files\Git\cmd添加到path中。

    三、提交和更新代码到Git仓库

    3.1 以Gitee为例

    百度搜索Gitee(中文名:码云),注册一个账号并登录,在登录之后,去认证一下邮箱。

    Note:

    1、然后随便创建一个库,不需要配置什么,就直接创建即可,否则在pycharm中第一次上传代码时会卡界面。

    2、打开之前安装的git bash窗口输入以下命令用来创建Git与Gitee的连接:

    git config --global user.name "Gitee中的用户名,比如tom-gitee"
    git config --global user.email "xxxxx@qq.com"

    3.2 配置pycharm

    💫3.2.1、选择Git安装路径

    打开pycharm,点击File–>Settings–>Version Control–>Git–>选择Git的安装路径(如果之前是默认路径的话就是C:\Program Files\Git\cmd\git.exe),然后点击Apply应用,点击OK关闭Settings界面

    💫3.2.2、下载gitee插件

    点击File–>Settings–>Plugins–>搜索并安装gitee–>安装好后重启pycharm

    Note:对于GitHub和Gitlab是不用安装插件的,可以直接使用。Gitee的话是因为它是国内的,pycharm没有集成它,所以需要安装插件。

    💫3.3.3、在pycharm中登录Gitee账号

    第一种登录方法:点击File–>Settings–>Version Control–>Gitee–>点击+号–>Login via Gitee,输入我们之前在Gitee中注册的用户名和密码。

    Note:比较依赖网速,建议连一个比较好的网络再去登录,比如热点,如果登录失败,多尝试几次。

    第二种登录方法:可以在菜单栏中点击VCS–>Share Project on Gitee, 同样会提示你登录Gitee,其实和上面差不多。

    Note:旧版本的pycharm的话Share Project on Gitee可能会在VCS下的import into里,反正如果找不到的话都点开看一下吧。

    3.3 上传本地项目到gitee仓库

    💫3.3.1、菜单栏中点击VCS–>Share Project on Gitee

    如果不需要改什么就直接点击Share。

    Repository name:仓库名,一般默认是项目名。

    Remote:远程仓库的别名,默认是origin。

     

    💫3.3.2、选择需要提交的代码

    勾选我们想要提交的代码,点击Add即可,在pycharm右下角会出现上传进度条,在上传成功后,也会弹出提示框,点击弹出框上的仓库名,会直接打开到Gitee页面上我们刚刚提交的项目中,如下图:

    Note: 其中.idea可不用提交,它是pycharm自带的,对于其他人来说没有意义。

    💫3.3.3、在Gitee查看项目

    在上传成功之后,前往Gitee,在上面菜单条点击“我的”,可以看到我们刚刚提交的项目,点击它,就能看到我们刚刚提交的所有内容了,如下图:

     

    3.4、关于脚本颜色的说明

  • 如果是已经上传了最新的代码,那文件名就是黑色
  • 修改已经上传的代码,文件名会变成蓝色
  • 没有上传到gitee的文件名是红色
  • 新创建的文件并已添加到缓存区的,文件名是绿色
  • 如图,四个颜色很鲜明。

    3.5、创建新的脚本文件

    当在项目中创建一个新的脚本文件时,该文件会被自动检测,提示你是否需要添加到Git的缓存区,点击Add按钮,就会将其添加到Git的缓存区了。这里我们可以勾选"Don't ask again",这样以后就会直接自动添加到缓存区了。

    3.6、Git的三个按钮:下载、提交、上传

  • 第一个按钮:Update Project 下载
  • 第二个按钮:Commit to master 提交到本地仓库,即保存在本地
  • 第三个按钮:Push Commits to [Gitee上的项目名] 上传到Gitee
  • 💫3.6.1、Update 拉取远程仓库最新代码

    每天在我们开始工作之前,或者提交代码到远程仓库前都应该先拉取远程仓库的最新代码,避免产生版本冲突。

    点击Update按钮,会有两个选项,都是可以将远程仓库的最新代码拉取下来。对于新手来说,选第一项即可。

  • Merge the incoming changes into the current branch,
  • 字面意思Merge:合并分支
  • 好处:Merge 是非常好的,因为它是非破坏性的操作。现有的分支不会以任何方式改变。与rebase(将在下面讨论)有很大不同。
  • 坏处:如果main分支是非常活跃的(即更新频繁),这可能会污染你的分支, 因为提交的commit历史很多。虽然使用高级的git log选项可以缓解这个问题,但它会让其他开发人员难以理解项目的历史。
  • Rebase the current branch on top of the incoming changes
  • Rebase这个命令这个命令会始终把你最新的修改放到最前头,比如你对主branch进行rebase以后, 你的所有修改就会在主branch当前所有的修改之前。
  • 好处:该命令会合并分支的commit历史,以达到简化历史信息的作用。
  • 坏处:使用rebase命令会合并其他分支的历史进入到feature分支,失去了合并前的上下文信息,可能会带来潜在的灾难,因为你不知道合并前,main分支的修改到底做了什么,因为一些信息被合并了(缩减了提交历史)
  • 💫3.6.2、Commit 保存在本地仓库

  • 点击commit按钮,会在Changes中自动勾选刚刚修改过的以及新添加的脚本文件,而Unversioned Files是之前我们没有上传的文件就不会被勾选,如果你想上传需要我们主动勾选。
  • 如果双击Changes下的文件,会打开原文件以及修改后的文件进行对比,修改过的地方都会有颜色标注出来的,所以提交之前可以再次扫一遍以防有什么错误。
  • 在下面的输入框中写入本次提交的注释,这个是必须要写的,这样别人再看的时候,才会知道你做了什么。
  • 然后点击下面的Commit按钮就在本地完成了提交。
  • 💫3.6.3、查看历史提交版本

    点击左下角的Git–>Log,可以查看到历史提交的版本,主要查看的就是我们添加的注释,所以说注释很重要。

    💫3.6.4、Push 上传到远程仓库

    当我们已经在本地提交了我们的代码之后,我们就可以点击push按钮来上传之前本地的代码到远程仓库,如下图:左边选择我们保存在本地的版本,然后点击下面的push按钮即上传成功。

    去Gitee刷新我们的仓库就能看到更新上去的内容了。

    四、克隆Git仓库项目代码

    4.1、获取项目链接

    当我们想要分享我们Gitee上的项目给别人时,该如何做呢?看下图:

    点击进入Gitee上的项目中–>克隆/下载–>HTTPS和SSH皆可,点击复制,就可以得到我们项目的链接了。

    4.2、克隆项目代码

    点击Git–>Clone–>在URL中输入获取到的仓库链接–>选择要存放的文件地址–>点击Clone,等待进度条结束,就完成了项目代码的克隆。

    五、分支操作

    5.1、创建分支

    1、当我们写代码时,会有一个master主分支,主分支只提交没有问题的代码

    2、我们写代码的话是不会直接在主分支写的,或者当主分支有bug时,会创建一个专门去写代码或者专门去解bug的分支

    3、一般公司里改bug的分支叫hot-fix

    创建过程:点击pycharm右下角master–>New Branch–>起一个分支名字,比如hot-fix–>点击Create

    勾选“Checkout branch” 就会自动切到创建的分支中,我们可以发现右下角的分支名字已经变成了hot-fix分支了。

    5.2、切换分支

    当我们处于hot-fix分支下,但是想切回master分支的时候:点击右下角hot-fix–>点击master分支–>点击Checkout,即可成功切回到master分支了。

    5.3、合并分支

    💫5.3.1、代码不冲突

    当主分支和分支代码没有冲突的时候,可以直接合并。

    💡比如我们在hot-fix分支下,在demo.py中修改了一个代码,commit时要记得加上注释,如下图:

    如果当你真正修好了这个bug,你就可以把你的分支合并到主分支上。

    💡但是当你在修bug的同时,别人可能也操作了主分支。举个例子,切到master分支下,我对B aiduTest.py这个文件做了一些修改,并commit了这个版本 (这个时候我们处于master分支,去检查demo.py文件,里面是没有内容的,因为我们之前的修改是处于hot-fix分支)

     💡查看Git log可以很清楚的看到出现了两个分支,一个分支是主版本被另一个同事修改了,一个分支是我们去修改了一个bug

     💡现在我们想把修改过bug的代码合并到主分支中。做法:先把分支切回到master主分支,然后点击右下角master–>hot-fix–>Merge Selected into Current,就能将我们的分支合并到主分支了。这里的话是因为代码没有冲突,所以直接合并了,不需要手动解决冲突。

     查看log,可以发现hot-fix分支已经被合并到主分支了。

    💫5.3.2、代码有冲突

    当合并时检测到主分支代码和分支代码不一样的时候,需要手动合并。举例如下:

    💡切回到hot-fix分支,在demo.py中修改代码并提交,如图:

    💡再切回到master分支,同样对demo.py文件修改代码,并提交,如图:

    💡查看log,存在了两个分支,一个master,一个hot-fix。

    💡保持在master分支下,点击点击右下角master–>hot-fix–>Merge Selected into Current,这时候就会发现由于主分支代码和hot-fix分支代码都被修改过了,就会存在冲突,会提示你去解决这个冲突。

    💡你可以选择Accept yours,那hot-fix分支的代码就不要了选择Accept Theirs,那master分支的代码就不要了。当然这不会影响到另一个同事那边的代码,只是合并的时候没有采用他的代码。

    我们也可以选择Merge选项,这时候就会展现master分支的修改原始代码hot-fix分支的修改

    💡点击两边的按钮可以把两边的代码合并到中间的原始代码上,如果觉得合并后代码没什么问题就可以点击Apply应用,当然如果有问题,也是可以选择接受左边的或者右边的代码。

    💡查看log,分支已被合并

    5.4、回溯之前的版本

    当我们提交了很多的版本之后,想要查看之前的版本时,同样是在log中选择想要查看的版本,然后右键点击checkout,即可切到之前的版本了。

    六、生成版本号(tag标签)

    通常,发布一个版本时,会在版本库中打一个标签(tag),这样,就唯一确定了打标签时刻的版本。将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来。

    6.1、选择版本

    选择想要添加标签的版本,右键点击New Tag

    6.2、创建标签

    输入标签名,即版本号,点击OK。

    6.3、推送标签到远程仓库

    点击Push,勾选下面的Push tags,即可将标签推送到远程仓库。

    6.4、在远程仓库查看标签

    在远程仓库中查看标签,点击下图中的master,就能看到标签选项了。

    七、SSH公钥设置

    在gitee网站上点击个人头像–>设置–>SSH公钥,可以看到设置SSH公钥的页面

    点击“怎样生成公钥”,可以看到生成命令,如下

    7.1、HTTPS与SSH区别

  • HTTPS (pull和push的时候需要密码)
  • SSH(不需要密码,但是需要创建公钥)
  • 创建SSH公钥的目的: 

    使用SSH公钥可以让你在你的电脑和码云通讯的时候使用安全连接(git的remote要使用SSH地址)

    7.2、创建公钥

    ⚡️1、在桌面右键选择Git Bash

    ⚡️2、在Git bash 窗口输入命令:ssh-keygen -t rsa

    Note:-t 后面是写加密协议,rsa也是一种比较常用的加密协议,这里我们采用rsa来创建 -C 邮箱可以省略

    ⚡️3、按照提示完成三次回车,这时默认会在C:\Users\用户名\.ssh 生成一个.ssh文件夹

    ⚡️4、进入.ssh文件可以看到生成的rsa文件,.pub文件就是公钥。

    7.3、添加公钥

    ⚡️1、右键用记事本打开id_rsa.pub,复制其中的所有代码(开头的ssh-rsa,也是要的,不要漏掉 )

    ⚡️2、将其粘贴到gitee网站上的SSH公钥中,标题不需要我们取,在代码粘贴进入之后会自动识别机器名。

    ⚡️3、点击确定,输入密码验证身份,就成功添加了公钥了。

    ⚡️4、之后,当我们share项目的时候就可以使用SSH链接去share了。

    来源:BetterFate!

    物联沃分享整理
    物联沃-IOTWORD物联网 » Git配置详细教程及基础使用方法,教你轻松学会git代码管理

    发表评论