Git 如何使用 下
1、Git 推送到远程仓库的方式
1.1 第一种
直接在代码托管平台创建远程仓库,然后将本地仓库代码提交到远程仓库
过程:
1、在 GitHub 上创建一个远程仓库
2、通过 git clone 远程仓库地址 克隆到本地
3、进入克隆的文件夹 建立项目文件,代码文件
4、将文件夹内(工作区)的内容提交到暂存区,通过 git add . 或者 git add 文件名
5、通过 git commit -m “描述” ,将暂存区的内容提交至本地仓库
6、直接通过 git push ,将本地仓库内容推送至远程仓库
1.2 第二种
在本地创建一个git仓库,然后在代码托管平台创建一个远程仓库,现在要把本地仓库的项目推送到远程仓库,我们需要将本次仓库和远程仓库连接起来,然后在进行推送到远程仓库
过程:
1、在 GitHub 上创建一个远程仓库
2、自己建立一个文件夹,用 git init 初始化一个git仓库
3、在本地仓库 建立项目文件,代码文件
4、将文件夹内(工作区)的内容提交到暂存区,通过 git add . 或者 git add 文件名
5、通过 git commit -m “描述” ,将暂存区的内容提交至本地仓库
6、通过 git remote add 远程仓库地址别名 远程仓库地址 ,将本地仓库与远程仓库连接起来
7、通过 git push 远程仓库地址别名 master ,将本地仓库内容推送至远程仓库
注: 创建远程仓库时,暂时不要初始化/ 创建 README.md
2、Git 命令行操作
安装Git后,在资源管理器的空白处,单击鼠标右键打开窗口,点击 Git Bash Here ,打开Git命令行窗口,在窗口中可直接使用Linux命令操作
2.1.1 Linux指令
cd 目录名称 进入目录
cd . . 返回上一级目录
ls 查看当前目录的内容
ls -a 查看当前目录内包含隐藏的文件(比如我们的 .git 文件夹)
mkdir 文件夹名称 创建文件夹
touch 文件的名称 创建文件
clear 清屏
rm -f 文件名 表示删除一个文件
rmdir 文件夹名称/目录名称 表示删除一个文件夹/目录
rm -rf 文件夹名称 删除包含有文件的文件夹
cp 要复制的文件 复制出来的文件 表示复制文件
pwd 显示工作路径
参考链接:Linux常用命令全集
2.1.2 vim 编辑器
- vim 文件名 or vi 文件名 都可以通过vim打开文件。一般vim打开文件功能更多一些,特别是对于shell脚本这种文本,会有不同字符的高亮显示。vim打开的同时如果目录没有,会创建新的文件并打开
- cat 查看文件的内容
- i 在进入vim编辑器的时候,如果要输入内容,首先要输入i键
- :q! 强制退出vim编辑器,且内容不保存
- :wq 保存并退出
参考链接:vim编辑器的使用详解
2.2 初始化 Git 本地库
命令: git init
然后通过: ls -a 查看是否有 .git文件夹
补充:.git 目录中存放的是本地库相关核心配置文件,也不要随意删除与修改
.git 目录仓库目录说明:
-
hooks目录:脚本文件的目录。
-
info目录:保存了不希望在 .gitignore 文件中管理的忽略模式的全局可执行文件
-
logs目录:日志目录
-
objects目录:存储所有数据内容
-
refs目录:存储指向数据(分支)的提交对象的指针
-
config文件包含了项目特有的配置选项
-
description文件仅供 GitWeb 程序使用
-
HEAD文件指向当前分支
2.3 设置签名信息来区分不同开发人员的身份信息
- 仅在当前目录的本地Git仓库范围内有效(局部)
$ git config user.name mingzi
$ git config user.email ******@163.com
- 系统用户级别:登录当前操作系统的用户范围(全局)
$ git config --global user.name mingzi
$ git config --global user.email ******@163.com
注:项目级别优先于系统用户级别,即局部优先级高于全局,至少有一个,不允许都没有
2.4 查看状态(查看工作区、暂存区的状态)
命令 : $ git status
On branch master # 默认在master(主干)分支上
No commits yet # 当前没有任何提示
nothing to commit (create/copy files and use "git add" to track)
# 没有什么需要提交的(创建/复制文件,使用“git add”命令可追踪,也就是用git去管理文件
2.5 添加到暂存区
- 将工作区的“新建/修改”添加到暂存区
命令: git add 文件名加后缀 - 恢复,不放到暂存区
命令: git rm --cached 文件名加后缀
2.6 提交到本地库
- 将暂存区的内容提交到本地库
命令: git commit [-m “提交说明信息”] 文件名加后缀 - 修改 demo1.txt 文件内容,再查看状态:需要重新添加和提交
命令: git rm --cached 文件名加后缀
2.7 查看版本历史记录
- 显示最详细的日志信息包含日期等
命令:$ git log
注:如果内容太长, 多屏显示控制方式:
空格键: 向下查看
b : 向上查看
q : 退出查看
- 以漂亮的格式显示:即每条日志只显示一行
命令: git log --pretty=oneline - 简约的格式显示:
命令: git log --oneline - 显示回滚版本步数:
命令: git reflog
HEAD@{回滚对应版本,底层操作需要移动多少步}
2.8 前进后退版本
-
基于索引值操作
命令: git reset --hard <局部索引值> -
使用 ^ (异或)符号:只能后退
命令: git reset --hard HEAD^
注:一个 ^ 表示后退一步,n 个表示后退 n 步 -
使用 ~ 符号:只能后退
命令: git reset --hard HEAD~n
注:n指定步数,表示后退 n 步
2.9 删除文件并恢复
- 前提:删除文件前,此文件需要已经提交过本地库,指针位置指向历史记录,才可恢复
- 删除:rm 文件名.txt
- 命令: git reset --hard <历史记录索引值>
注:历史记录索引值在查看版本历史记录上显示有
2.10 对比文件差异
- 将工作区中的文件和暂存区进行比较
命令: git diff <文件名> - 将工作区中的文件和本地库历史记录比较
命令: git diff <本地库中历史版本> <文件名> - 不带文件名比较多个文件