git客户端下载及安装
1. 添加到桌面
(1)图标组件(Addition icons) : 选择是否创建桌面快捷方式。
(2)桌面浏览(Windows Explorer integration) : 浏览源码的方法,使用bash 或者 使用Git GUI工具。
(3)关联配置文件 : 是否关联 git 配置文件, 该配置文件主要显示文本编辑器的样式。
(4)关联shell脚本文件 : 是否关联Bash命令行执行的脚本文件。
(5)使用TrueType编码 : 在命令行中是否使用TruthType编码, 该编码是微软和苹果公司制定的通用编码。
2. 选项内容 (然后一路点击下一步Next。。。)
git常用基本命令
- 初始化git
git init;
// 告诉git ‘我’ 是谁
git config --global user.name '三脚猫';
git config --global user.email '12345678@qq.com';
git config --list 查看个人信息
- 关联远程库(github)
【添加远程地址库】git remote add origin http://github.com/superhaohao
【查看当前远程库地址】git remote -v;
【克隆远程库代码】git clone http://github.com/superhaohao
【克隆指定远程库代码】git clone -b xxx .git地址
// 克隆完然后...有弹窗需要打上码云或者github的账户和密码
【修改远程仓库】git remote set-url origin git@gitee.superhaohao/in.git
【删除远程仓库】git remote rm origin;
- 分支操作
【查看分支】git branch; (带*的是当前分支)
【查看所有分支】git branch --all;
【创建分支】git branch (分支名);
【创建分支并移动到里面】git checkout -b (分支名);
【删除分支】git branch -d (分支名);
- 代码合并基本命令
【1.拉取代码】git fetch; (拉取到缓存区,还需要手动合成代码)
【2.合并代码】git merge (远程分支名); eg: git merge origin/master;
【3.查看冲突】git diff;
【4.查看所在分支】git branch;
【查看所有分支】git branch --all;
【5.切换分支】git checkout (分支名);
【移动到某分支】git checkout (分支名);
【6.添加到缓存】git add .; (.是指所有文件)
【撤销缓存】git reset <file>; (<file>是指定或者不加是全部)
【7.查看缓存状态】git status;
【8.版本说明】git commit -m '网站v2.0版本'
【撤销版本】git reset --hard (commit_id); (id用git log查看)
【9.推送代码】git push origin (本地分支名):(远程分支名);
- git后悔药
【查询版本】git log; (查看版本号)
【回退版本】git reset --hard HEAD^; (回退到上一个版本,ps: 上上个版本就是 HEAD^^)
【回退指定版本】git reset --hard 3628164; (翻上面log命令,复制commit id加密字符串前几位都行)
【关机后悔药】git reflog; (查询git history命令找到你回退指定版本的commit id 。再次回退)
- git添加多个远程地址,1拖2
其实我们在git remote add的时候 `origin` 就是一个名称而已,我们只需要修改成别的
【添加第二远程库】git remote add mirror http://github.com/superhaohao
【查一下是否成功】git config --list;
这时候你能看到有两个地址`remote.mirror.url=`和`remote.origin.url=`
'坑:需要注意的是,当你推送同一个项目不同地址的时候,记得分别两个地址都推送一遍,
不然就会出现版本跨越,就需要用到下面的方法去解决'
- git我最喜欢的粗暴的命令
如果1拖2origin的时候,有时候会忘记推送一个库。下次推送就跨越了版本git报错无法推送,我们需要一些简单粗暴的办法~!
【强行拉取】 git fetch --all
【强行指定版本】 git reset --hard origin/master
【强行合并】 git pull origin master
- 如何生成ssh公钥
【选择目录】cd ~
【生成ssh】ssh-keygen -t rsa -C "619596123@qq.com"
// 三次回车即可生成 ssh key
【查看秘钥】cat ~/.ssh/id_rsa.pub
// 添加后,在终端(Terminal)中输入
【查看状态】 ssh -T git@gitee.com
// 返回:Welcome to Gitee.com, yourname! 表示成功
- 编写自定义git命令
【git st】git config --global alias.st status
【git ci】git config --global alias.ci commit
# eg:git ci -m " - test:xxxxx"
【git lg 编写】git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"
【查看alias别名配置】cat .git/config
- 移除远程库提交的git文件
【删除远程文件】git rm -r --cached images
# 执行完上面推一遍代码: git commit -m "delete images/" git push origin master
关于 .gitignore
的忽略文件的推送
遇到没有自动生成
.gitignore
的项目,需要后面自己配置上过滤文件
总结来自:CSDN - .gitignore忽略文件的推送
【创建文件】touch .gitignore
【添加过滤】vim .gitignore
/node_modules
/storage/*.key
/config/database.php
【查看git配置】cat .git/config
【识别配置文件】git config core.excludesfile .gitignore
【删除git本地缓存】git rm -r --cached .
// .gitignore只能忽略原来没有被跟踪的文件,
解决方法就是先把本地缓存删除
作者:Super三脚猫
链接:https://www.jianshu.com/p/c889cad7c46e
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。