关于git的使用
什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。
项目中git的初级使用
没有安装git的话
请移步到我的另一篇文章------ git 的安装
创建本地版本库(方便之后的提交)
版本库又名仓库,也可以简单理解成一个目录
-
创建一个版本库非常简单
首先,选择一个合适的地方,创建一个空目录(目录名尽量为英文):(这个目录是你需要提交的文件所在的目录) -
通过
git init
命令把这个目录变成Git可以管理的仓库
$ git init
瞬间Git就把仓库建好了,而且告诉你是一个空的仓库(empty Git repository)
完成后会生成一个.git
文件,这个目录是Git来跟踪管理版本库的,最好不要随意修改,默认是隐藏的,用 ls -ah
命令就可以看见。
$ ls -ah
- 把一个文件放到git仓库只需要两步
第一步:git add .
(提交所有文件,默认是修改过的文件) (git add 文件名
—提交单个文件)
git add . // 把文件添加到仓库 . 表示所有文件,执行之后没有任何显示
但是在你再一次执行 git status
的时候 你添加的文件名会从红色变为绿色
(’
.
’ 表示的是全部文件,项目中一般是用.
因为实际操作的时候有可能你并不会准确的记住你到底改了什么文件)
第二步:
git commit -m '备注信息' // -m后面输入的是本次提交的说明,可以输入任意内容
git commit
命令执行成功后会告诉你,
file changed:1文件被改动的意思;
insertions:插入了内容的意思。
commit
可以一次提交很多文件,所以你可以多次add
不同的文件
把线上代码克隆到本地
假设刚到公司,也就是入职第一天,老大说:‘你今天先把项目运行起来看看’。然后给你一个git 地址。那么问题来了,我应该从何入手呢?
- 首先先看看配的电脑上是否有git,
- 没有安装的话 ,看另一篇文章 ------git 的安装
- 如果有的话,就在需要克隆的(你已经建好的文件夹)当前目录里面
a。按住shift+ 右键
然后点击“ 在此处打开 powershell 窗口(win10),win7等等可能不是 powershell,是其他的 …”。
b。或是右键打开git bash
c。然后输入git init
— 会生成一个.git 的隐藏的文件。
初始化git
仓库之后,我们就需要克隆线上的代码,以便自己之后的代码提交
4.但是在克隆代码之前你需要先建一个属于你自己的分支,然后把代码克隆到本地的自己的分支上,之后提交代码的时候就是提交本地分支即可
创建dev 分支,然后切换到 dev 分支的下面
git checkout -b dev
git checkout
命令加上 -b
参数表示创建并切换,相当于以下两条命令
git branch dev
git checkout dev
-
然后开始克隆
git clone 需要克隆代码的地址
在第一次克隆的过程中需要输入账号(用户名)和密码;因为我们项目是用的腾讯云开发平台,所以当弹框出来的时候
输入在腾讯云开发上的用户名和自己设置的密码即可
有的是直接输入git账号和密码 -
克隆指定分支的代码
git clone -b 分支名 仓库地址
例子: git clone -b v2.8.1 https://git.test.net/123/test.git (这是假的链接)
解释一下这个命令:-b表示要从分支下载,v2.8.1就是具体的某个分支的名称,https://git.test.net/123/test.git 这是app源码的git仓库地址
——
总结—将自己的代码上传到远程git仓库
总的来说上传文件(添加文件到git仓库)大致几步:
1. git status 查看文件状态
2. git add . 把所有文件添加进去,实际上就是把文件修改添加到暂存区,可反复添加多个文件
3. git commit -m 'beizhu' 提交更改,实际上就是把暂存区的所有内容提交到当前分支
4. git push 实际上是把当前分支master推送到远程
git使用之 ----撤销
-
取消已经暂存的文件, 也就是撤销
git add
在git add .
之后想取消,只想提交一个文件,而不是全部文件的时候
输入git reset Head .
表示撤回所有在暂存区的文件 -
修改最后一次提交,也就是撤销
git commit
在commit -m '备注内容'
之后想撤销 commit 提交
输入$ git commit --amend
(此命令将使用当前的暂存区域快照提交。如果刚才提交完没有作任何改动,直接运行此命令的话,相当于有机会重新编辑提交说明,但将要提交的文件快照和之前的一样
如果刚才提交时忘了暂存某些修改,可以先补上暂存操作,然后再运行 --amend 提交:
$ git commit -m 'initial commit'
$ git add forgotten_file
$ git commit --amend
上面的三条命令最终只是产生一个提交,第二个提交命令修正了第一个的提交内容
- 取消对文件的修改,就是git status 的第二个括号的内容,也就是撤销对文件内容的修改
$ git checkout -- benchmarks.rb(文件名)
该文件已经恢复到修改前的版本。你可能已经意识到了,这条命令有些危险,所有对文件的修改都没有了,因为我们刚刚把之前版本的文件复制过来重写了此文件。所以在用这条命令前,请务必确定真的不再需要保留刚才的修改。
参考文档:
廖雪峰的文档: https://www.liaoxuefeng.com/wiki/896043488029600
若有问题,希望大家多多指正。