Git使用教程(超全,看一篇就够了)

Git使用教程(超全,看一篇就够了)

目录

Git介绍

Git安装

Git使用

问题与解决

推荐学习网址

Git介绍

Git是什么?

Git是目前世界上最先进的分布式版本控制系统。

SVN与Git的最主要的区别?

SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,如果在局域网还可以,带宽够大,速度够快,如果在互联网下,如果网速慢的话,就纳闷了。

Git是分布式版本控制系统,那么它就没有中央服务器的,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上。既然每个人的电脑都有一个完整的版本库,那多个人如何协作呢?比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。

Git安装

windows上安装Git

下载安装

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

下载好后,双击进行下一步下一步即可。

验证git安装是否成功

1). 命令行输入:git --version,提示如下标识安装成功

2). 回到电脑桌面,鼠标右击如果看到有两个git单词则安装成功

Linux上安装Git

yum安装

在Linux上是有yum安装Git,非常简单,只需要一行命令

yum -y install git

输入 git --version查看Git是否安装完成以及查看其版本号

备注: yum安装git被安装在/usr/libexec/git-core目录下

Git初始化配置

a、设置用户名:$ git config --global user.name "<用户名>"

b、设置用户邮箱:$ git config --global user.email "<电子邮件>"

注意:该配置会在github主页上显示谁提交了该文件

c、配置ok之后,我们用如下命令来看看是否配置成功

git config --list

注意:git config --global 参数,有了这个参数表示你这台机器上所有的git仓库都会使用这个配置,当然你也可以对某个仓库指定不同的用户名和邮箱

Git使用

操作流程

git操作演示

1.进入demo文件夹

cd demo

2.初始化仓库

git init

3.仓库中创建readme.txt文件,内容:test

4.查看仓库状态

5.添加文件到暂存区中

git add readme.txt

6.提交文件到仓库

git commit -m "readme.txt提交"

7.查看仓库状态

8.提交到远程库

已设置公钥,可直接push

git push

本地创建仓库想直接提交到远程库

# 1. 先连接远程库(可能需要登录认证)

git remote add origin 远程仓库地址(git@gitee.com:xxxx/test.git)

# 2.获取远程库与本地同步

git pull --rebase origin master (远程库不为空,会有冲突,提交会失败,需要先将远程库与本地同步)

# 3.推送当前master分支到远程库

git push origin master

9.修改文件后可以使用diff查看文件修改前后对比

git diff readme.txt

10.git log来查看最近到最远的历史提交日志

11.回退版本

git reset --hard 版本号

Git工作中操作流程

master分支git pull远程仓库数据到本地

切换到开发分支上,进行新增/修改仓库数据

git checkout develop

git status查看仓库状态

git add .全部提交(或git add xxx单个提交)

git commit -m "提交备注"进行提交仓库

git push origin develop推送到远程库的开发分支上

进行代码审核

审核完成后进行代码合并

git checkout master # 切换到master主线上

git merge develop # 合并develop分支

git push # 推送master到远程库

Git基本常用命令

mkdir: XX (创建一个空目录 XX指目录名)

pwd: 显示当前目录的路径。

git init 把当前的目录变成可以管理的git仓库,生成隐藏.git文件。

git add XX 把xx文件添加到暂存区去。

git commit –m “XX” 提交文件 –m 后面的是注释。

git status 查看仓库状态

git diff XX 查看XX文件修改了那些内容

git log 查看历史记录

git reset --hard HEAD^ 或者 git reset --hard HEAD~ 回退到上一个版本

(如果想回退到100个版本,使用git reset –hard HEAD~100 )

cat XX 查看XX文件内容

git reflog 查看历史记录的版本号id

git checkout -- XX 把XX文件在工作区的修改全部撤销。

git rm XX 删除XX文件

git remote add origin https://github.com/tugenhua0707/testgit 关联一个远程库

git push –u(第一次要用-u 以后不需要) origin master 把当前master分支推送到远程库

git clone https://github.com/tugenhua0707/testgit 从远程库中克隆

git checkout –b dev 创建dev分支 并切换到dev分支上

git branch 查看当前所有的分支

git checkout master 切换回master分支

git merge dev 在当前的分支上合并dev分支

git branch –d dev 删除dev分支

git branch name 创建分支

git stash 把当前的工作隐藏起来 等以后恢复现场后继续工作

git stash list 查看所有被隐藏的文件列表

git stash apply 恢复被隐藏的文件,但是内容不删除

git stash drop 删除文件

git stash pop 恢复文件的同时 也删除文件

git remote 查看远程库的信息

git remote –v 查看远程库的详细信息

git push origin master Git会把master分支推送到远程库对应的远程分支上

更多常用命令请查看下面链接

https://www.cnblogs.com/upstudy/p/15868898.html

使用中可能遇到的问题

1.git reset恢复指定版本代码后,再无法提交到远程库;git status提示出现2个分支不同提交

报错:Your branch and 'origin/master' have diverged, and have 1 and 1 different commits each, respectively

解决:

先执行

git rebase origin/master # 重写提交历史来实现分支的整合,可以避免分叉合并,保持提交记录的线性。‌

然后使用

git pull --rebase

最后使用

git push origin master

2.git push origin master的时候会出现失败的现象(master|REBASE 1/10)

报错:master|REBASE 1/10)

解决:https://blog.csdn.net/qq_42469247/article/details/88901756

3.提交代码报错

解决:git pull拉去代码,再解决冲突文件再push上去;强制将本地代码推送到远程(git push -u origin master -f)慎用

4.git push时报连接问题:fatal: Could not read from remote repository.

解决方法一:git push origin <分支名称>(指定远程地址)

解决方法二:

没有远程分支时:

git remote add origin [URL] //将git进行远程连线

有远程分支时:

git branch --set-upstream-to=origin/<分支名> //将git进行远程连线

5.git push报错

解决方法:

! [rejected] master -> master (non-fast-forward)

error: failed to push some refs to 'git@gitlab.huayong.mm:awa_aoto_test/awa_auto_test.git'

hint: Updates were rejected because the tip of your current branch is behind

hint: its remote counterpart. Integrate the remote changes (e.g.

hint: 'git pull ...') before pushing again.

hint: See the 'Note about fast-forwards' in 'git push --help' for details.

6.git冲突产生 和 解决方案 思维导图

推荐几个有关git的学习网站

1.git官网

https://www.git-scm.com/

2.廖雪峰的官方网站中的git教程

https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

非常推荐!!!

讲解的浅显易懂,容易理解,还有视频教学,对初次接触者的帮助非常大,建议先跟着廖老师学习git。

3.猴子都能懂的git入门

http://backlogtool.com/git-guide/cn/intro/intro1_1.html

第一次接触的网站,是师弟推荐的,只是可惜呀。。。当时没有学进去。。。

4.菜鸟教程

http://www.runoob.com/git/git-tutorial.html

这个网站也不错,网站上有很多其他工具等的学习教程.

5.练习网址

https://learngitbranching.js.org/?locale=zh_CN

相关作品

祛斑吃什么药最有效果
bet体育365官网正规

祛斑吃什么药最有效果

📅 07-01 👁️ 1925
亏人的解释
bet体育365官网正规

亏人的解释

📅 07-11 👁️ 3294
脏辫可以保持多长时间 脏辫拆完头发还能要吗
365bet如何提款

脏辫可以保持多长时间 脏辫拆完头发还能要吗

📅 07-07 👁️ 4299