## :-: [Git官网](https://git-scm.com) ## :-: [GitHub](https://github.com) ## :-: [Github访问速度很慢的原因,以及解决方法](https://blog.csdn.net/u013517229/article/details/81351885) :-: [视频教程 - 代码真香](https://www.youtube.com/channel/UCmlhPmTdqYhRWwWZWSIBwGw "代码真香") ``` Git是一个分布式的版本管理系统,是一个软件、 1.直接记录快照而非文件对比。 2.可以保证文件的完整性。 3.文件计算校验。 git仓库(隐藏的)、工作目录、暂存区(在git仓库中) ``` ``` -- 新建文件夹和文件 cd .. 返回上一级 md test 新建test文件夹 md d:\test\my d盘下新建文件夹 cd test 进入test文件夹 cd.>cc.txt 新建cc.txt文件 dir 列出文件夹下所有文件及文件夹 -- 删除文件夹和文件 cd test 进入test文件夹 dir 查看所有文件目录 del a.txt 删除a.txt的文件 del *.txt 删除所有后缀为.txt的文件 rd test 删除名为test的空文件夹 rd /s D:\test 删除D盘里的test文件夹 会出现如下 test, 是否确认(Y/N)? 直接输入 Y 在回车 rd test/s 删除此文件夹下的所有文件 test, 是否确认(Y/N)? 直接输入 Y 在回车 --------------------- ``` ``` -- 版本查询 $ git version -- 进行配置 global -- 全局 $ git config --global user.name "junjie" -- 配置邮箱 $ git config --global user.email "1093336886@qq.com" -- 查询配置 ( 家目录:~/ ) $ cat ~/.gitconfig -- 创建一个新的仓库 mkdir/md -- 创建文件夹的命令 $ mkdir git-warehouse -- 进入这个目录 $ cd git-warehouse -- 初始化一个git仓库 (git会创建初始化master分支) $ git init -- 创建文件 $ touch README.md -- 查看git仓库的状态 $ git status -- 将README.md文件暂存起来(暂存区) $ git add README.md -- 将README.md文件,恢复到之前的状态 $ git rm --cached README.md -- 将目录下的所有文件都添加到版本控制中、(放入暂存区) (-A 的意思就是all) $ git add -A -- 版本发布,将文件数据提交到git的本地仓库中。 -m -- 备注说明"add README.md" $ git commit -m "add README.md" -- 配置添加远程仓库 origin 是变量可自定义,代表远程仓库的地址。(可配置多个远程仓库) $ git remote add origin https://github.com/get-001/Test-001.git -- 查看所有远程配置 $ git remote -- 查看所有远程配置(详细的) $ git remote -v -- 将代码推送到远程仓库 添加 -u 之后再提交代码就可以简写(git push)。表示默认提交 origin master 分支 $ git push -u origin master -- 克隆:拉取一份远程仓库的代码 地址 -- https://github.com/get-001/Test-001.git 可选,放到文件夹(新建) -- gitDemo $ git clone https://github.com/get-001/Test-001.git gitDemo -- 修改文件 是CMD的命令、 :wq -- 保存 $ vim README.md -- 当远程仓库有更新变动时,拉取更新变动的部分 $ git pull -- 可以选择性的拉取某个地址(origin)中的某个分支(master) $ git pull origin master -- 创建feature1分支 $ git branch feature1 -- 查询所有分支 (*标识的是当前分支) $ git branch -- 切换到feature1分支 $ git checkout feature1 -- 创建分支同时跳转到该分支 $ git checkout -b [分支名] -- 删除分支 -D -- 大写的D为强制删除 :[分支名] -- 在分支名前面加冒号可以删除远程的分支、 $ git branch -d [分支名] -- 合并分支 $ git merge [分支名] -- 以该分支提交代码 origin -- 为连接地址 $ git origin [分支名] ``` ``` 2021-06-07 -- 查询该命令的帮助说明 git <命令> --help -- 查询远程分支 git remote -v -- 添加上游仓库地址 git remote add <upstream> <url> git fetch <upstream> <分支名> -- 创建分支 git branch <分支名> -- 删除一个分支 git branch -d <分支名> -- 删除一个分支(强制) git branch -D <分支名> -- 切换分支 git checkout <分支名> -- 创建并切换分支 git checkout -b <分支名> -- 合并分支 git merge <需要合并哪个分支名> -- 提交新分支到远程仓库 git push origin <分支名> -- 在本地删除远程仓库的分支 git push origin :<分支名> -- 查看git日志 git log git log --oneline -- 查看git日志详细 git show [logID] git log --all --decorate --oneline --graph -- 拉取分支 git pull -- 合并整合命令 git rebase -- 图形化冲突解决 git mergetool -- 版本回退 上一次 (更改指针) git reset <分支名>^ -- 版本回退 上5次 git reset <分支名>~5 -- 版本回退 某一次 git reset <版本ID> -- 版本回退 某一次 (会产生新的版本,相当于是副本) git reverts [版本ID] .gitignore 该文件用于配置忽略托管的文件、 -- 为你的项目创建必要的 .gitignore 文件 -- https://www.toptal.com/developers/gitignore -- 忽略文件 *.sh -- 忽略文件夹下的所有文件 .settings/ -- 排除不忽略该类型的文件 !*.txt -- 忽略文件夹下的某种类型的文件 /a/.*.class ```