一、git 的安装
- Mac上安装xcode即可
- 单独安装 Command Line Tools 也可以
在命令行中输入 git --version 。出现git版本号则安装成功。
现在使用的命令行工具是 item2 item2 官网
同时安装了 oh my zsh ,安装命令如下:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
二、基本操作/命令/过程
1、新建目录
mkdir demo
2、初始化这个目录,把它变成git可以管理的仓库。
cd demo
git init
初始化之后,demo目录中多了.git目录(一般是不可见的)。这个目录是git来追踪管理版本的,没事别乱改,会把git给破坏的。
3、初始化之后,默认是处在master分支上的
git branch // 查看当前本地所有分支,分之前有* ,表示当前所在分支
4、在demo目录中新增文件index.txt。随便写点什么,wq保存输入的内容
vi index.txt
5、git status ,查看当前分支状态
红色,表示被改动的且未添加到暂存区的文件
6、git add 添加改动到暂存区
git add index.txt // 添加指定文件到暂存区
git add . // 添加所有被改动的文件到暂存区
7、git status ,再次查看分支状态
绿色部分列出了已经被添加到暂存区的文件
8、提交改动到版本库
git commit -m "此次提交的说明信息。。。"
9、查看提交记录
git log
// 或者
git log 分支名
可以看到这个分支的提交记录,列出的信息里包含:谁提交的,什么时间、说明信息、版本号(一串很长的黄色字符串)。。
10、查看两次提交都改动了哪些文件
git diff 版本号1 版本号2 --stat
可以看到改动了index.txt , 那如果想看具体改了些什么呢?
git diff 版本号1 版本号2
用绿色标注了改动的地方。。。。
11、版本回滚 (所有的改动已经提交)
// 1、回滚所有内容到上一版本
git reset head^
git reset head 上一版本号
// 2、向前回滚3个版本
git reset head^3
git reset 向前数3个版本号
// 3、回滚某一文件到指定版本
git reset head^ index.txt
git reset head^3 index.txt
// 4、将本地回滚到和远程一致
git reset --hard origin/分支名
12、删除文件
(1)文件已add或者commit ,这时删除文件
git rm -f 文件名
(2)还在工作区,未add/commit ,直接删除即可
git rm 文件名
三 、分支部分
1、分支的创建与切换
// 创建分支
git branch fenzhi1
// 切换到指定分支
git checkout fenzhi1
2、查看本地全部分支
git branch
3、合并分支fenzhi2 到 分支 fenzhi1
// 先要切换到分支,然后在当前分支上进行合并操作
git checkout fenzhi1
git merge fenzhi2
4、删除分支
git branch -d 分支名
四、和远程版本库的一些动作
1、将本地目录整体推送到github上的某个仓库
git remote add origin https://github.com/JiangLittleBai/test.git
git branch -M main
git push -u origin main
2、提交代码远程分支(记不住也没关系,git push 后命令行会提示......)
本地分支和要关联的远程分支建议同名。
git push --set-upstream origin fenzhi_a // 第一次
git push
3、查看远程分支
git branch -r // 查看所有远程分支
git branch -vv // 查看本地分支与远程分支的对应情况
4、删除远程分支
git push origin --delete 分支名
五、其他常见操作
1、分支的切换与暂存
git stash // 将所有未提交的修改都保存起来
git pop // 把之前git stash的内容恢复出来
git stash list // 查看所有暂存列表
2、撤销。。。。
已经修改,但是还未执行 git add 添加到暂存区
git checkout . // 撤销所有改动的文件
git checkout 文件名 // 撤销指定文件
3、git 怎么恢复本地误删的文件
第一步,
git status // 查看本地改动的暂存记录
第二步
git reset head 被删除的文件或文件夹
第三步
git checkout 被删除的文件或文件夹