周五了,又是划水的一下午,无意中在某号上发现了这样一张图,说的内容很简单,就是我们日常离不开的git,可能因为最近github宕机,网传服务器被盗的新闻把,让我瞬间产生了兴趣,就点进去看一下
大家能看明白吗?
@糖醋鼻子:人越多,架越打不起来,所以尽可能的一次多merge代码
@屋檐下的黑蝙蝠:没有冲突皆大欢喜,有冲突则头破血流
@da丶mon_:真的存在吗?
@在下岳不群:这种情况根本不存在
@这个没人注:impossible
不知道大家怎么看这张图,其实这就是我认为的程序的魅力所在,好像所有的东西,最后都可以回归到生活,一些很有趣的小实例就可以演示明白一些技术
就像我刚开始的时候说的一样,作为我们最常使用的一门技术,在某些时候,他们能帮我们大忙,但是,前提是我们要知道他们都能干什么
举个简单的例子,某网盘,除了氪金用户,那速度,砸电脑都不足以解决。这不,我就想试试github可不可以,突然发现,真香 ,不仅仅是下载,分享也是相当的简单,所以,现在我基本就是用github代替了它,毕竟穷人一个
用到的命令也不多,我个人习惯,在简单的东西也要记录一下,就像我的电脑里还会存放一个输出helloworld的源码
而除了这些命令之外,对于一些常用的命令我也进行了一些总结,毕竟有的时候git也会成为面试中的一员
git config --global user.name "你的名字" 让你全部的Git仓库绑定你的名字
git config --global user.email "你的邮箱" 让你全部的Git仓库绑定你的邮箱
git init 初始化你的仓库
git add . 把工作区的文件全部提交到暂存区
git add .// 把工作区的文件提交到暂存区
git commit -m "xxx" 把暂存区的所有文件提交到仓库区,暂存区空空荡荡
git remote add origin https://github.com/name/name_cangku.git 把本地仓库与远程仓库连接起来
git push -u origin master 把仓库区的主分支master提交到远程仓库里
git push -u origin <其他分支> 把其他分支提交到远程仓库
git status查看当前仓库的状态
git diff 查看文件修改的具体内容
git log 显示从最近到最远的提交历史
git clone + 仓库地址下载克隆文件
git reset --hard + 版本号 回溯版本,版本号在commit的时候与master跟随在一起
git reflog 显示命令历史
git checkout -- 撤销命令,用版本库里的文件替换掉工作区的文件。我觉得就像是Git世界的ctrl + z
git rm 删除版本库的文件
git branch 查看当前所有分支
git branch <分支名字> 创建分支
git checkout <分支名字> 切换到分支
git merge <分支名字> 合并分支
git branch -d <分支名字> 删除分支,有可能会删除失败,因为Git会保护没有被合并的分支
git branch -D + <分支名字> 强行删除,丢弃没被合并的分支
git log --graph 查看分支合并图
git merge --no-ff <分支名字> 合并分支的时候禁用Fast forward模式,因为这个模式会丢失分支历史信息
git stash 当有其他任务插进来时,把当前工作现场“存储”起来,以后恢复后继续工作
git stash list 查看你刚刚“存放”起来的工作去哪里了
git stash apply 恢复却不删除stash内容
git stash drop 删除stash内容
git stash pop 恢复的同时把stash内容也删了
git remote 查看远程库的信息,会显示origin,远程仓库默认名称为origin
git remote -v 显示更详细的信息
git pull 把最新的提交从远程仓库中抓取下来,在本地合并,和git push相反
git rebase 把分叉的提交历史“整理”成一条直线,看上去更直观
git tag 查看所有标签,可以知道历史版本的tag
git tag 打标签,默认为HEAD。比如git tag v1.0
git tag <版本号> 把版本号打上标签,版本号就是commit时,跟在旁边的一串字母数字
git show 查看标签信息
git tag -a -m "<说明>" 创建带说明的标签。-a指定标签名,-m指定说明文字
git tag -d 删除标签
git push origin 推送某个标签到远程
git push origin --tags 一次性推送全部尚未推送到远程的本地标签
git push origin :refs/tags/ 删除远程标签
git config --global color.ui true 让Git显示颜色,会让命令输出看起来更醒目
git add -f 强制提交已忽略的的文件
git check-ignore -v 检查为什么Git会忽略该文件
而除了正常使用的命令之外,还有
git地址:https://github.com/biws-byte/bws
想要获取这份文档资料,添加小助手:msbxq2020免费获取