Git学习笔记
一、概念
git:开源的分布式版本控制系统
GitHub:世界上最大的代码托管平台https://github.com/
1、结构
工作区-git add=>暂存区-git commit=>本地库
2、git托管中心
局域网:GitLab服务器,docker
外网:GitHub或码云
3、本地库/远程库
团队内协作
团队间协作
二、git
1、本地库初始化
git init // 创建了隐藏目录.git,包含本地库相关的子目录和文件
2、设置签名
分项目级别和系统级别,项目级别优先
git config username coldwaterfish // 项目级别
git config email coldwaterfish @qq.com
git config --global // 系统级别
查看签名信息
cat .git/config // cat命令 concatenate用于查看文件的内容
// 系统级别签名在操作系统用户目录下.gitconfig
3、查看git状态
git status
On branch master // 在master分支
No commits yet // 还没有任何提交,指本地库里没有东西
nothing to commit (create/copy files and use "git add" to track) // 指暂存区没有东西
4、将文件提交到暂存区
git add 111.txt
5、从暂存区撤回
git rm --cached 111.txt
6、从暂存区提交到本地库
git commit 111.txt
跳出VIM编辑器输入提交的备注信息,esc,:wq保存退出
或者
git commit -m "my second commit,modify 111.txt" 111.txt
7、记录
git log // 完整格式
git log --pretty=oneline
git log --oneline
git reflog
8、前进后退
git reset --hard 596114e
git reset --hard HEAD^ // 后退一步,几个^后退几步
git reset --hard HEAD~n // 后退n步
reset三个参数
--soft // 本地库
--mixed // 本地库和暂存区
--hard // 工作区、暂存区、本地库
9、删除文件
rm 111.txt
git add 111.txt
git commit -m "delete" 111.txt
10、比较
git diff
11、分支
git branch -v //查看分支
git branch blue // 创建分支
git checkout blue // 切换分支
git merge blue // 切换到master后合并blue分支
三、github
1、查看远程仓库
git remote -v
2、增加远程仓库
git remote add origin https://github.com/coldwaterfish/coldwater.git //origin是别名
3、推送
git push origin master
4、克隆
git clone
5、拉取
git pull // git fetch 和git merge的集合
四、工作中的操作
1、拉取同事项目
git clone https://....
2、创建本地分支
// 拉取下来的项目abc有.git
cd abc
git branch //有一个master分支
git branch -a //显示所有分支
// 创建本地分支
git checkout -b chen //创建chen分支并切换到该分支
git merge origin/nihao //合并nihao分支到chen分支
// 提示输入merge信息按 i 切换到insert模式,就可以输入了,输入完之后先按esc,再输入:wq,回车
// 在自己分支修改内容后,提交到远程仓库
// 拉取远程分支
git pull origin dev_ni
git merge origin/nihao //合并nihao分支到chen分支
3、创建自己仓库
https://blog.csdn.net/MinJing_Lin/article/details/50678708
// push代码
git add .
git commit -m '添加新页面'
git push origin master
四、访问github加速
// 修改本地hosts文件
windows系统的hosts文件的位置如下:C:\Windows\System32\drivers\etc\hosts
mac/linux系统的hosts文件的位置如下:/etc/hosts
// 增加http://github.global.ssl.fastly.net和http://github.com的映射
获取Github相关网站的ip
访问https://www.ipaddress.com,拉下来,找到页面中下方的“The Original IP Address Toolset”
Top Sites->github.com和github.global.ssl.fastly.net点进去找到网站的ip
下面是我的配置
140.82.114.3 github.com
199.232.69.194 github.global.ssl.fastly.net
// 地址会变,打不开了就重新看看ip