当前位置:   article > 正文

使用Git和Git常用命令_git chore

git chore

提示:本文主要介绍Git命令,实现基本的代码托管。


git概述

1.什么是git

GIT,全称是分布式版本控制系统,git通常在编程中会用到,并且git支持分布式部署,可以有效、高速的处理从很小到非常大的项目版本管理。分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。

简单来说git就是我们将代码提交到仓库中的一个工具,托管代码到远程,分布式托管,避免本机磁盘损坏等原因造成不可挽回的局面。

2.代码托管平台

  • GitHub

官方网站:https://github.com

是全球最大的Git代码托管平台,目前收归微软旗下

  • Gitee(码云)

官网网站:https://gitee.com

开源中国旗下的Git代码托管平台,在国内还是很方便的

  • GitLab

官方网站:https://about.gitlab.com

GitLab是利用Ruby on Rails一个开源的版本管理系统,实现一个自托管的Git项目仓库

其他还有:腾讯开发者平台阿里云Code托管平台百度效率云

3.git安装

在Windows上使用Git,可以从Git官网直接,然后按默认选项安装即可

windows系统下载链接

安装完成之后鼠标右键只要出现 git bash here 菜单即说明安装成功,下面是打开的界面

4.git工作流程


git主要命令

git使用步骤

1.安装git,具体前面git概述已经讲到

2.注册gitee的账号(或其他平台账号),修改个人空间地址,绑定邮箱。

3.全局配置用户名和邮箱

git config --global user.name [你的码云账号]
git config --global user.email [你的码云验证邮箱]

# 查看用户名
git config user.name
# 查看邮箱
git config user.email
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

4.配置密钥对:生成公钥和私钥,用于上传代码时的安全验证

git bash里执行命令ssh-keygen 一路回车,就可以生成密钥对,默认密钥对是存放在(/c/Users/[主机用户名]/.ssh/).pub就是公钥,另外一个是私钥,这两个文件不要动!

到线上(gitee或其他平台)打开设置->安全设置->ssh公钥,把本地的公钥文件全选复制进来,输入登录密码,就配置成功了

5.创建本地仓库

# 在本地创建一个项目文件夹,执行 git init 初始化一个本地git仓库
# 这时项目里会多出一个.git目录(这个目录默认是隐藏的,这里就是用来存放文件快照的地方)
git init
  • 1
  • 2
  • 3

6.创建一个线上仓库

7.将本地仓库和线上仓库建立关联:

git remote add origin [线上仓库的SSH地址]
  • 1

8.常用提交代码步骤

# 代码添加到暂存区
 git add -A (也可以 git add [文件名] 来单独添加某一个文件)
 
# 代码提交到本地仓库 
git commit -m '[本次提交的备注信息]'

# 代码推送到远程
git push origin master
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8


分支管理

# 查看本地所有分支
git branch
# 查看本地和远程所有分支
git branch -a


# 新建一个分支,但仍然停留在当前分支
git branch [分支名]
# 新建一个分支,并切换到该分支
git checkout -b [分支名]
# 在master分支上新建lianxi远程分支,lianxi分支代码与master保持一致
git push origin master:lianxi


# 删除本地分支[只能删除merge的分支,也就是合并的分支]
git branch -d [分支名]
# 强制删除本地分支[使用时注意是否已经是合并的分支,并且可以废弃]
git branch -D [分支名]
#删除远程分支
git push origin --delete [分支名]

# 切换分支
git checkout [分支名]


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

git pull

# git pull是git fetch后跟git merge FETCH_HEAD的合并操作
git fetch origin master # 从远程主机的master分支拉取最新内容 
git merge FETCH_HEAD    # 将拉取下来的最新内容合并到当前所在的分支

# 直接拉取本地分支的远程代码
git pull origin [本分支名]
# 拉取其他分支代码:例如下面新建一个分支,切换到新分支之后直接可以将master的远程代码拉取下来
git pull origin master
# 远程主机的某个分支的更新取回,并与本地指定的分支合并,完整格式可表示为:
git pull <远程主机名> <远程分支名>:<本地分支名>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

合并分支

假如我们现在在dev分支上,刚开发完项目,执行了下列命令

git add -A
git commit -m '本次提交了XXX'
git push origin dev
  • 1
  • 2
  • 3

然后我们要把dev分支的代码合并到master分支上 该如何?

首先切换到master分支上

git checkout master
  • 1

如果是多人开发的话 需要把远程master上的代码pull下来,如果是自己一个开发就没有必要了,为了保险期间还是pull

git pull origin master
  • 1

然后我们把dev分支的代码合并到master上

git merge dev
  • 1

然后查看状态

git status
  • 1

得到如下信息

On branch master
Your branch is ahead of 'origin/master' by 12 commits.
  (use "git push" to publish your local commits)
nothing to commit, working tree clean
  • 1
  • 2
  • 3
  • 4

上面的意思就是你有12个commit,需要push到远程master上
执行下面命令即可

git push origin master
  • 1

这样就完成了

版本管理

# 显示当前分支的版本历史
git log

  • 1
  • 2
  • 3

版本回退

# 版本回退最好要备份一份文件,以往无法找回丢失文件
# commit后面的字符串即为版本号,我们可以使用 git reset --hard [版本编号]  进行历史回退
git reset --hard '[之前填写的版本编号]'

# 版本回退
git reset --hard HEAD^^^^^^^  # ^的个数代表回退到之前多少的版本
git reset HEAD~X  # X代表你要回退的版本数量,是数字

# 回退到和远程版本一样
git reset --hard origin/master // origin代表你远程仓库的名字,master代表分支名
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

详细请看gitee介绍版本回退:https://gitee.com/help/articles/4195#article-header2

其他命令

# 克隆仓库代码
git clone [显示仓库地址]
# 例如
git clone https://gitee.com/layui-vue/layui-vue.git

# 查看远程仓库信息
git remote
# 显示所有的远程主机
$ git remote -v
# 列出某个主机的详细信息
$ git remote show [主机名]

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

附录

Git常见命令

git init    # 初始化仓库
git config   # 配置用户信息
git remote add origin [线上仓库地址]    # 新增远程仓库的关联
git remote rm origin    # 删除远程仓库的关联
git add -A   # 添加到暂存区
git commit -m '[本次提交的备注信息]'    # 代码提交(每一次commit都会有一个新的版本号)
git push origin [分支名]    # 推送到远程仓库
git status    # 查看当前仓库的状态
git log    # 查看日志(每一个commit在这里都能查看到,而且commit后面的随机字符串就是版本号),按字母q 退出log
git reset --hard [要回退的版本号]    # 回退到之前的某一个版本
git clone [线上仓库地址]    # 把线上仓库代码克隆到本地
git pull origin [分支名]    # 在已有的仓库基础上拉取某分支最新的线上代码,拉取之后直接合并
git fetch origin [分支名]    # 在已有的仓库基础上拉取某分支最新的线上代码,拉取之后由用户决定是否合并
git branch -a    # 查看分支
git branch newBranch    # 基于当前分支创建newBranch分支
git branch -d myBranch    # 删除myBranch分支
git diff tmp    # 查看当前分支和tmp分支的区别
git merge tmp    # 将tmp分支合并到当前分支
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18

commit 注释规范

用于说明 commit 的类别,常用的7个标识。

feat:新功能(feature)

fix:修补bug

docs:文档(documentation)

style: 格式(不影响代码运行的变动)

refactor:重构(即不是新增功能,也不是修改bug的代码变动)

test:增加测试

chore:构建过程或辅助工具的变动


总结

看完本文就会发现,其实git的常用命令也就10多个,其他命令也不是必须记住的,需要的时候能查到就行。

当然如果还是不喜欢使用命令,可以使用Sourcetree,下载地址:https://www.sourcetreeapp.com/

这是一个Git代码管理的图形化工具,我觉得非常好用

当然本文只介绍了常用命令,如果需要学习更多可以看看廖雪峰老师的讲解:https://www.liaoxuefeng.com/wiki/896043488029600

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号