乐趣区

关于java:Git从入门到入土

Git 介绍

Git 是开发中必须用到的分布式的版本控制软件,这是其官网 Git。

咱们能够在官网中找到其阐明文档,非常的具体并且应用简略。

下载并装置

官网阐明文档曾经非常具体了,外面蕴含了 weindows、Linux、mac 的装置步骤,这里就拿 Windows 举例:

下载完后,始终点下一步即可,装置结束后再桌面右击鼠标如果呈现上面两个选型阐明装置结束

本地仓库

因为 Git 是分布式的版本控制软件,所以咱们首先要学习的就是如何将代码提交到本地,而后提交至远端代码库。

版本提交

在 Git 中,咱们首先要做的就是对一个我的项目进行治理。

进入我的项目文件夹,执行初始化命令即可由 Git 接管以后我的项目的版本控制。如下所示

而后右键,抉择 Git Bash Here 后进入终端,让 Git 接管 MyProject 文件夹。

而后输出 git init(将这个目录变成 Git 能够治理的仓库)当命令失效后,会生成一个.git 的暗藏文件夹,如下所示

而后咱们能够应用 git status 来检测以后文件夹中被治理的文件状态。

此时新增的文件和批改后的文件均属于未被治理的文件,出现红色,如上所示。

此时就须要咱们治理该文件,应用 add 命令,通知 git,把文件增加到仓库。

  • git add 文件夹名 # 仅仅治理一个文件
  • git add . # 代表当前目录下的所有文件

当咱们治理后再应用 git status 查看状态后就变成绿色了,而后应用 git commot 通知 Git,把文件提交到仓库中,如下所示:

这里 Git 通知你又异样,让你进行用户信息的配置,输出账号密码等信息。咱们只须要依照提醒配置一下个人信息即可,配置后再次提交如下所示:

到此咱们就残缺的提交了咱们的文件到近程仓库中,能够应用 git log 查看一下生成的版本。

咱们总结下咱们方才用到的命令:

命令 形容
git init 初始化 git,让 Git 接管以后文件夹
git status 查看以后文件状态,新增或批改的文件都出现红色,而执行了 add 命令后会出现绿色
git add [./filename] 将文件进行提交
git commit -m “ 形容音讯 ” 生成一个版本
git log 查看版本信息。

版本回滚

  • 高版本回滚到低版本
    • 首先应用 git log 查看提交日志
    • 而后应用 git reset –hard 版本号进行回滚

  • 同样的也能够从低版本回滚到高版本
    • 首先就不能应用 git log 而是应用 git reflog 查看日志
    • 而后应用 git reset –hard 版本号进行回滚

照例咱们总结一下

命令 形容
git log 查看版本提交信息,用于高版本回滚低版本
git reflog 查看版本提交信息,用于低版本回滚高版本
git reset –hard 版本号 进行版本回滚

分区概念

在下面的操作中,咱们能够发现一个文件有多个状态:

  • 以管制状态:指该文件能够被 git 治理的状态,目前来讲所有位于 git init 文件夹下的文件都是以管制状态
  • 以变动状态:当有新文件,或本来文件被批改后,应用 git status 出现红色状态的文件
  • 暂存区状态:指的是执行 git add 命令后,红色状态文件变为绿色状态的文件
  • 版本库状态:指的是执行 git commit 命令后,提交至版

这些不同的状态对应不同的分区,因为此时咱们做的都是本地版本控制,所以这里的版本库即为本地版本库

应用分支

分支是 Git 中非常重要的一个概念,它能够让你解决更多的突发状况,以及让你更好的进行协同操作开发。让你在开发中,多个分支互不影响,有正式版本,和开发版本等等,如下所示

这样咱们不同的分支中所看到的已提交版本并不相同,当在某一分支中创立新的分支,该子分支将继承以后分支节点中的所有文件,默认是有一个 master 分支。

常用命令如下所示

命令 形容
git branch 查看以后我的项目的所有分支(分支前 * 示意以后处于的分支)
git branch 分支名 创立一个新的分支
git checkout 分支名 切换分支
git merge 要合并的分支 合并分支(先切换分支)
git branch -d 分支名 删除分支

合并抵触

因为分支抵触,可能会呈现多条分支批改同一处代码的状况,这个时候就呈现了合并抵触的问题,因为 Git 并不知道听谁的,所以就全副将其保留,由你进行手动批改。

近程推送

下面讲的很冷落,然而都是基于本地仓库的,真正在应用的时候,是要和其他人进行协同操作的,这也是 Git 的一大劣势。

Git 是一款分布式的版本控制软件,能够抉择的近程版本库很多,这里就介绍咱们最罕用的 GItHub。

首先就是注册一个用户,这里就不演示了。

创立仓库

当咱们登录 GitHub 后,首先要做的就是常见一个近程仓库。首先现关上仓库页面,

而后点击 NEW 新建一个仓库,如下所示

创立实现后将会看到上面的页面

到此为止咱们的仓库就创立结束了,前面就能够应用了

推送代码

依照下面的提醒咱们开始推送代码到 GitHub

git remote add origin https://https://github.com/iszhonghu/Test.git
git push -u origin master

而后就能够看到咱们的文件胜利上传了

这里只是上传的 master 分支,如果要是想上传 dev 分支,则还是须要输出 push 命令

git push -u origin dev

总结:

命令 形容
git remote add 别名 仓库地址 给仓库取一个别名
git push -u origin 分支名 将分支推送到近程仓库

须要留神的是:

推送代码时,须要一个一个分支进行推送

拉取代码

既然能够推送代码也就能够拉取代码,以不便实现协同办公。

首先要创立一个文件夹来保留代码,而后间接拉取即可,

命令 形容
git clone 近程仓库地址 克隆近程仓库所有代码(仅第一次应用)
git pull origin 分支名 增量更新某一分支中的代码

分区概念

因为波及到了近程仓库,所以又多了一个分区,如下所示

其中应用增量更新的 pull 实际上能够拆分为两条命令

  • git fetch origin 分支 将近程版本库中的分支代码拉到本地版本库中
  • git marge origin 分支 将本地版本库中代码合并到本地分支中

其余操作

配置文件

Git 的配置文件有三个局部:

  • 仓库级的配置文件:在仓库的 .git/.gitconfig,该配置文件只对所在的仓库无效。
    • local
  • 全局配置文件:Mac 零碎在 ~/.gitconfig,Windows 零碎在 C:Users< 用户名 >.gitconfig。
    • global
  • 零碎级的配置文件:在 Git 的装置目录(Mac 零碎下装置目录在 /usr/local/git)的 etc 文件夹中的 gitconfig。
    • system

SSH

应用 SSH 能够实现代码的推送和拉取

  • 生成公钥和秘钥
    • ssh-keygen
      • 默认放在 /.ssh 目录下,其中 id_rsa.pub 为公钥,id_rsa 为私钥

总结

上面是一些在本文章中有的命令:

命令 形容
git init 初始化
git status 查看状态
git add 治理指定文件
git commit -m “ 形容 ” 生成版本
git log 查看版本记录(之前)
git reflog 查看版本记录(之后)
git reset –hard 版本号 版本回滚
git branch 查看所有分支
git branch 分支名 创立新分支
git checkout 分支名 切换分支
git merge 分支合并
git branch -d 分支名 删除分支
git remote add 别名 地址 近程仓库取别名
git push -u 别名 分支 推送某分支到近程仓库
git clone 地址 克隆近程仓库代码
git pull 别名 分支 拉取近程仓库中某一分支代码,增量更新
git rebase -i HEAD~ 条数 版本合并

最初

  • 如果感觉看完有播种,心愿能关注一下,顺便给我点个赞,这将会是我更新的最大能源,感激各位的反对
  • 欢送各位关注我的公众号【java 冢狐】,专一于 java 和计算机基础知识,保障让你看完有所播种,不信你打我
  • 求一键三连:点赞、转发、在看。
  • 如果看完有不同的意见或者倡议,欢送多多评论一起交换。感激各位的反对以及厚爱。

——我是冢狐,和你一样酷爱编程。

欢送关注公众号“Java 冢狐”,获取最新消息

退出移动版