包新的Git安装与使用教程(2024九月更新)

发布于:2025-05-23 ⋅ 阅读:(10) ⋅ 点赞:(0)

目录

一、安装git

1.下载git

2.git安装

3.环境变量配置与测试

 二、使用教程

1.创建版本库

2.版本回退

3.删除和恢复文件


一、安装git

1.下载git

官方下载地址:https://git-scm.com/download

 

然后进入以下页面,点击下载链接即可(windows一般都是64位)。 

下载完毕后打开安装包进入安装步骤。 

2.git安装

选择自己的安装路径,如下:

3.环境变量配置与测试

安装完之后进行环境配置,在命令行输入以下内容:

git config --global user.name "your_name"

按回车后接着输入:

git config --global user.email "your_email"

完成后如下图:

 注意:要填自己真实的邮箱

因为 Git 是分布式版本控制系统,所以需要填写用户名和邮箱作为一个标识,git config --global 参数,有了这个参数,表示你这台机器上所有的 Git 仓库都会使用这个配置,当然你也可以对某个仓库指定的不同的用户名和邮箱。
这样,我们的 Git 客户端就下载并安装完成了。

 二、使用教程

1.创建版本库

(1)通过命令git init把这个目录变成git可以管理的仓库

首先要新建一个目录(注意:这里可以在盘里面直接创建新的文件目录,也可以使用命令mkdir file_name进行创建)进行示范,这里演示第二种方法:

先将路径切换到你自己的盘里面,命令如下:

随后创建自己的文件夹,用命令mkdir file_name进行创建:

然后进入文件夹所在位置查看自己是否创建成功,创建成功如下图所示:

接着进入新创建的文件夹目录中,这样便在D盘目录下创建了一个git_file版本库,如下:

但此时它还不是 git 可以管理的仓库,于是便要执行git init命令才行,如下:

此时你的git_file文件目录下便会多一个.git的文件夹,这个文件夹这个目录是 Git 来跟踪管理版本的,没事千万不要手动乱改这个目录里面的文件,否则会把 git 仓库给破坏了,如下:

(2)把文件添加到版本库中

在版本库git_file目录下新建一个记事本文件readme.txt,并输入一些内容在里面,比如:11111

第一步:使用命令 git add readme.txt 添加到暂存区里面去,如下:

如果没有任何提示,说明已经添加成功了。

第二步:用命令 git commit -m "注释" (注释里面的内容不设要求,自己能明白就行)告诉 Git,把文件提交到仓库。

此时已经提交成功了,接下来我们可以看一下是否还有文件没有提交,使用命令git status,如下:

如果出现这样的字样,说明文件已经全部提交了。

当我们对readme.txt文件进行修改,在其内容后面添加一行22222的内容,继续使用git status进行状态查看,如下:

从提示的内容可知,readme.txt文件的内容已经被修改,但是还未提交到仓库里面,如果想要查看文件里面究竟修改了什么内容,可以使用命令git diff readme.txt进行查看,如下:

可以看到,红色字体部分是修改前的内容,绿色部分是修改之后的内容。

确认修改了什么内容后我们就可以放心提交到仓库了,提交修改过后的文件和前面说的提交文件是一样的操作,第一步是把文件放入暂存区,使用命令git add 文件名 ,第二部是提交文件到仓库,使用命令git commit -m "注释",如下:

以上两步完成以后可以再看一下是否还有文件没有提交,使用git status进行查看,如下:

2.版本回退

我们对readme.txt文件再次进行修改,在后面添加一行内容33333,并提交到仓库,如下:

如果我们不想要当前的版本,怎样才能换回以前的呢?

我们可以使用git log来查看一下之前的历史记录,使用命令git log即可查看,如下:

我们可以看到,历史记录从上到下是从修改时间由近到远排列的,在上面可以看到修改的时间以及修改人的信息,如果觉得信息太多的话,我们可以使用命令git reflog或者git log --pretty=oneline进行简化,如下:

回到之前所说的问题,我们怎样才能回退到之前的版本呢?这里推荐两种方法:

第一种:使用命令git reset --hard HEAD^,这条命令的作用是回退到上一个版本,如果要回退到上上个版本,要使用命令git reset --hard HEAD^^,以此类推;

第二种:第一种方法只适用于要退回的版本不远的情况,如果要退回前100个版本的话是非常不方便的,此时我们可以使用git reset --hard HEAD~100命令即可。

接下来我们做个示范,这是目前的readme.txt文件:

现在退回上一个版本,如下:

现在我们用git log看一下历史记录:

现在已经没有刚才那个版本了,文件里面的内容也改变了,如果要恢复刚才的版本该怎么办呢?

我们可以通过上面所说的版本号回退,使用命令git reset --hard 版本号,版本号用命令git reflog进行查看(上面有提过),如下:

现在我们可以使用命令git reset --hard 1a90bde来恢复了,演示如下:

使用cat readme.txt来查看文件里面的内容,如下:

可以看到,目前已经恢复成最新的版本了。

3.删除和恢复文件

现在我们在版本库git_file目录里面添加一个文件c.txt,然后提交,如下:

如果我们要删掉c.txt这个文件的话,可以直接在文件目录中删掉它,或者使用rm 文件名命令删除,如果我想彻底从版本库中删掉了此文件的话,可以再执行commit 命令提交掉,现在目录是这样的:

只要没有commit之前,如果我想在版本库中恢复此文件如何操作呢?可以使用如下命令git restore-- c.txt,如下所示:

这里有 2 种情况,如下:

1. readme.txt 自动修改后,还没有放到暂存区,使用 撤销修改就回到和版本库一模一样的状态。
2. 另外一种是 readme.txt 已经放入暂存区了,接着又作了修改,撤销修改就回到添加暂存区后的状态。

4.远程仓库

现在我们已经在本地创建了一个 Git 仓库,又想让其他人来协作开发,此时就可以把本地仓库同步到远程仓库,同时还增加了本地仓库的一个备份。

常用的远程仓库就是 github:https://github.com/,接下来我们演示如何将本地代码同步到github。
在 github 上创建仓库,首先你得在 github 上创建一个账号,这个就不演示了。然后在 github 上创建一个仓库,创建好后即可创建一个仓库

点击“create repository”按钮仓库就创建成功了。
Github 支持两种同步方式“https”和“ssh”。
如果使用 https 很简单基本不需要配置就可以使用,但是每次提交代码和下载代码时都需要输入用户名和密码。
如果使用 ssh 方式就需要客户端先生成一个密钥对,即一个公钥一个私钥。然后还需要把公钥放到 githib 的服务器上。

什么是 SSH?

SSH 为 Secure Shell(安全外壳协议)的缩写,由 IETF 的网络小组(Network Working Group)所制定。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议,利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。

 5.ssh密钥的生成和配置

ssh密钥的生成

第一步:创建 SSH Key。在用户主目录下,看看有没有.ssh 目录,如果有,再看看这个目录下有没有 id_rsa 和 id_rsa.pub 这两个文件,如果有的话,直接跳过此如下命令,如果没有的话,打开命令行,输入如下命令:git bash,执行命令,生成公钥和私钥,命令: ssh-keygen -t rsa,如下:

然后我们可以根据路径找到我们的公钥私钥:

ssh 密钥配置

密钥生成后需要在 github 上配置密钥本地才可以顺利访问。

接着打开你的id_rsa.pub(公钥)文件,可以用记事本打开,并把里面的内容全部复制下来,粘贴在Key的部分,然后点击Add SSH key按钮完成配置。

6.同步到远程仓库

同步到远程仓库可以使用 git bash。
现在,我们根据 GitHub 的提示,在本地的git_file仓库下(D:\git_file)运行命令:

git remote add origin git@github.com:emily-xl/python_project.git
git push -u origin master 

如果出现如下错误:

这说明你之前已经连接过你的远程仓库了,我们可以执行git remote rm origin指令,再执行以上两条指令,效果如下:

把本地库的内容推送到远程,使用 git push 命令,实际上是把当前分支master 推送到远程。

之前创建仓库的时候如果你没有勾选“Add a README file”这个内容,那么你的仓库里面应该是空的,由于远程库是空的,我们第一次推送 master 分支时,加上了 –u 参数,Git不但会把本地的 master 分支内容推送的远程新的 master 分支,还会把本地的master 分支和远程的master 分支关联起来,在以后的推送或者拉取时就可以简化命令。推送成功后,可以立刻在 github 页面中看到远程库的内容已经和本地一模一样了,上面的要输入 github 的用户名和密码如下所示:

从现在起,只要本地作了提交,就可以通过如下命令:git push origin master把本地 master 分支的最新修改推送到 github 上了,现在你就拥有了真正的分布式版本库了。

7.如何从远程库克隆

当我们想从GitHub上面下载某个项目到我们本地仓库上面时,我们此时执行命令:git clone 项目的ssh地址,如下:

此时使用ls指令,就可以看到这个名叫masr的项目出现在我们当前仓库里面了。

8.团队协作项目

当我们想要指定某几个人才有访问权限并对这个项目进行修改时,我们可以进行如下操作:

输入你的密码:

进入界面之后点击绿色的按钮:

对方会接收到一封邮件,按照邮件上面的内容执行就行,随后就可以邀请你想要的人进行创作了。

9.创建和合并分支

在版本回填退里,你已经知道,每次提交,Git 都把它们串成一条时间线,这条时间线就是一个分支。截止到目前,只有一条时间线,在 Git 里,这个分支叫主分支,即 master 分支。HEAD 严格来说不是指向提交,而是指向 master,master 才是指向提交的,所以,HEAD 指向的就是当前分支。

首先,我们来创建 dev 分支,然后切换到 dev 分支上。如下操作:

git checkout 命令加上 –b 参数表示创建并切换,相当于如下 2 条命令:
git branch dev
git checkout dev
git branch 查看分支,会列出所有的分支,当前分支前面会添加一个星号。

我们在 dev 分支的readme.txt文件上添加一行44444,我们先来查看下 readme.txt 内容:

接着提交(以下的dev2应是dev):

再切换回master分支,效果如下:

可以看到两条分支上面的内容并不一样,现在我们可以把 dev 分支上的内容合并到分支 master 上了,可以在 master 分支上,使用如下命令 git merge dev (以下dev2为dev)如下所示:

现在两条分支上面的内容完全一样了。

合并完后,我们可以接着删除 dev 分支了,操作如下:

这样就算是删除好了。

总结创建与合并分支命令如下:
查看分支:git branch
创建分支:git branch name
切换分支:git checkout name
创建+切换分支:git checkout –b name
合并某分支到当前分支:git merge name
删除分支:git branch –d name

10.其他

出现这种问题多半是因为你的电脑名称时以中文命名的,打开设置修改电脑名称即可:

然后重启电脑就会发现乱码没有了。

---END


网站公告

今日签到

点亮在社区的每一天
去签到