github 入门教程:

1、史上最浅显易懂的Git教程: https://www.liaoxuefeng.com/wiki/896043488029600
2、图形游戏学习git: https://learngitbranching.js.org/
3、菜鸟教程:https://www.runoob.com/git/git-tutorial.html

github原理

github 返回历史版本

1  可以使用git log命令获取提交的历史找到需要回滚到的提交点2  git reset --hard 9f2dc2ab450d922fd9f4faa82af90095de5f57743 git push origin master --force
# 撤销前一次 commit
git revert HEAD                  # 撤销前前一次 commit
git revert HEAD^# 撤回指定commit-id
#比如:git revert 0818badf6882ea2664a205bc8ef3a85425bb2537
git revert commit-id git push original master

github清除untracked 的 文件

# 删除 untracked files
git clean -f# 连 untracked 的目录也一起删掉
git clean -fd# 连 gitignore 的untrack 文件/目录也一起删掉 (慎用,一般这个是用来删掉编译出来的 .o之类的文件用的)
git clean -xfd# 在用上述 git clean 前,墙裂建议加上 -n 参数来先看看会删掉哪些文件,防止重要文件被误删
git clean -nxfd
git clean -nf
git clean -nfd

git远程分支

https://www.cnblogs.com/sandea/p/9855062.html
使用git checkout -b local_branch_name origin/remote_branch_name创建本地分支关联远程分支
远程生成新分支git push original local_branch_name
删除远程:git push original --delete remote_branch_name

  • git 本地分支提交到远程分支:远程先开好分支然后拉到本地

git checkout -b feature-branch origin/feature-branch //检出远程的feature-branch分支到本地

本地先开好分支然后推送到远程

$ git checkout -b feature-branch //创建并切换到分支feature-branch
$ git push origin feature-branch:feature-branch //推送本地的feature-branch(冒号前面的)分支到远程origin的feature-branch(冒号后面的)分支(没有会自动创建)
必须加冒号不然会有新的分支出现
git push origin debug100:xiaogongwei_v1.0 --force
强制推送整个分支被覆盖!!!!!!!

对比本地分支master与远程分支 origin/MG-APPS_Debug 的不同。
git diff master origin/MG-APPS_Debug

git stash

git stash是保存现场调试,然后git stash pop恢复, 然后git stash drop是删除

github 远程分支拉取本地

git fetch origin remote_branch_name
更新本地分支:
git pull origin MG-APPS_Debug:MG-APPS_Debug

github Tag软件版本

https://www.jianshu.com/p/36202c29e6ae

查看git git tag
显示tag信息 git show v1.4
创建git git tag -a v1.0 -m 'first version'
push Git:
git push origin v1.0或者将所有tag 一次全部push到github上 git push origin --tags

//删除github远端的指定tag
git push origin :refs/tags/v1.0.0

Git忽略规则和.gitignore规则不生效的解决办法

https://www.cnblogs.com/zhangxiaoliu/p/6008038.html
在git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改根目录中 .gitignore 文件的方法(如果没有这个文件,则需自己手工建立此文件)。这个文件每一行保存了一个匹配的规则例如:

  • 此为注释 – 将被 Git 忽略

.sample    # 忽略所有 .sample 结尾的文件
!lib.sample    # 但 lib.sample 除外
/TODO    # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
build/    # 忽略 build/ 目录下的所有文件
doc/
.txt   # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt

  • .gitignore规则不生效的解决办法

把某些目录或文件加入忽略规则,按照上述方法定义后发现并未生效,原因是.gitignore只能忽略那些原来没有被追踪的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。那么解决方法就是先把本地缓存删除(改变成未被追踪状态),然后再提交:

git rm -r --cached .
git add .
git commit -m ‘update .gitignore’

github 永久删除文件和历史记录

参考链接:
https://www.cnblogs.com/shines77/p/3460274.html

步骤1
执行命令git filter-branch --force --index-filter ‘git rm --cached --ignore-unmatch path-to-your-remove-file’ --prune-empty --tag-name-filter cat – --all

git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch projects/Moon.mp3' --prune-empty --tag-name-filter cat -- --all

显示Ref ‘refs/heads/master’ was rewritten说明成功。

步骤2
强制上传:

git push origin master --force

步骤3
清理工作

rm -rf .git/refs/original/
git reflog expire --expire=now --all
git gc --prune=now
git gc --aggressive --prune=now

LF will be replaced by CRLF

参考链接:https://www.jianshu.com/p/450cd21b36a4

  • 分析
    格式化与多余的空白字符,特别是在跨平台情况下,有时候是一个令人发指的问题。由于编辑器的不同或者文件行尾的换行符在 Windows 下被替换了,一些细微的空格变化会不经意地混入提交,造成麻烦。虽然这是小问题,但它会极大地扰乱跨平台协作。
    其实,这是因为在文本处理中,CR(CarriageReturn),LF(LineFeed),CR/LF是不同操作系统上使用的换行符,具体如下:

gitignore不起作用

  • 解决代码如下:
git rm -r --cached .
git add .
git commit -m 'update .gitignore'
  • 原因分析:
    这个文件里的规则对已经追踪的文件是没有效果的.所以我们需要使用rm命令清除一下相关的缓存内容.这样文件将以未追踪的形式出现.然后再重新添加提交一下,.gitignore文件里的规则就可以起作用了.

Github下载单独文件夹

参考链接:

1、Google浏览器或者火狐浏览器
如果用 Chrome 的话,可以用 GitZip for github扩展:
Gitzip官网:https://gitzip.org/最下面有插件安装方法,也可以百度搜素安装Google浏览器插件,把Gitzip安装上。

2、使用DownGit网站https://minhaskamal.github.io/DownGit/#/home
输入你要下载的链接:https://github.com/XiaoGongWei/MG_APP/tree/master/Testdata

Git 配置

1、使用git remote set-url origin "https://github.com/XiaoGongWei/XXX" 可以配置当前库的链接,上传下载出现问题时候使用git config --list查看配置是不是正确。注意必须用https不能用http

2、Ubuntu github进不去
解决方法:
进入控制台:
输入 sudo /etc/init.d/networking restart
对DNS restart ,然后重新进入,就OK了

【github】github问题集合相关推荐

  1. [github] github入手教程

    [github] github入手教程 简单的介绍一下Github的基本操作. 主页:https://github.com/ 首先自然是在GitHub注册一个帐号了.然后开始正文吧. Git基本介绍 ...

  2. Github常用框架集合

    Script桥接 https://github.com/JackyAndroid/AndroidChromium ★1476 - 谷歌浏览器安卓版源码项目 https://github.com/The ...

  3. github常见错误集合 [rejected] main -> main (non-fast-forward) Failed to connect to github.com por

    问题描述: 问题一: fatal: unable to access 'https://github.com/yuanjiejiahui/supermall.git/': Failed to conn ...

  4. linux开源项目github,GitHub 上的优质 Linux 开源项目,真滴牛逼!

    作为一名互联网人,提起 Linux 大家都不陌生,尤其是日常跟 Linux 操作系统打交道最多的,最熟悉不过了.互联网上关于 Linux 相关的教程和资料也非常的多,但是当你从中筛选出真正对自己有帮助 ...

  5. android 搜索框 github,Github上Android简单好用的提示框推荐 | 夕辞

    Android开发过程中经常会用到消息提示的Dialog,有人可能会用AlterDialog等,在这里推荐一个github上比较好用的提示Dialog组件:SimpleTipDialog. 用法比较简 ...

  6. Git的使用-将本地项目上传至Github/Github下载代码至本地-MAC

    一.使用的工具 安装Git iTerm 二.初始化操作 1.在github上创建新仓库 登录后,主页点击New repository 输入仓库名(description等可自行根据需求添加) 注意:仓 ...

  7. linux 搭建github,github在linux上的环境搭建-Go语言中文社区

    Centos版 1.git的安装: yum  install  git yum  的配置详见:http://blog.csdn.net/qq_32345239/article/details/5243 ...

  8. github(GitHub Flavored Markdown)

    2019独角兽企业重金招聘Python工程师标准>>> https://github.com/isaacs/github-flavored-markdown 转载于:https:// ...

  9. android录制mp3 github,GitHub - understanding/AndroidMP3Recorder: 为Android提供MP3录音功能[持续维护版]...

    AndroidMP3Recorder 项目介绍 本项目Fork自AndroidMP3Recorder,由于原作者停止维护,此项目是我fork下主分支来维护的.相比原项目,此项目支持以下功能: 修复部分 ...

  10. php随机图片github,GitHub - diudiuhaha/Random-Image: 随机图片服务

    前言 写文章想要配图,但是懒得挑图? 网页背景千遍一律? 最早的时候,经常听说"漫月API",就很好奇这个是什么东东,因为"漫月"一词勾起了我的好感-- 在学长 ...

最新文章

  1. 【好资源】473页斯坦福数学基础:《应用线性代数》(附pdf和ppt下载)
  2. [更新中]Lucene.net,中文分词技术 ICTCLAS研究
  3. shell脚本判断进程是否运行
  4. 高效程序员的45个习惯 pdf_如何培养孩子高效学习?养成高效学习的7 个习惯。建议收藏...
  5. P3803 【模板】多项式乘法(FFT)
  6. 计算机网络名词解释-csma cda,计算机专业对口升学模拟题1资料.doc
  7. 传输层:IP 地址解析 路由转发
  8. nginx反向代理初探
  9. UIButton 的简单运用
  10. 勒索过苹果的黑客REvil又来了?这次是7000万美元赎金!
  11. iZotope系列音频软件如何卸载
  12. Python——绘制词云图
  13. 黑马程序员——Java基础--IO(一)
  14. 三国志战略版:登庸令队伍_貂蝉与贾诩的武锋组合
  15. 如何用计算机给闺蜜表白,闺蜜情话最暖心短句50句
  16. 配置管理和变更管理_想要改善变更管理,消除对它的需要
  17. 量子计算 12 量子计算机到底是啥?
  18. IT大学生成长周报 | 第 7 期
  19. 《程序员修炼之道——从小工到专家》读后感一
  20. 对 AbsoluteLayout 的一点理解

热门文章

  1. 阐述什么是B2BCRM?
  2. java语言保留结构和联合_在下列概念中, Java 语言只保留了
  3. 海洋工作室——网站建设专家:【原】2009.NET年技术大会总结,有图片,说说我理解的技术大会【上】...
  4. 每日小技巧——教你用一行Python代码去除照片背景
  5. okhttp下载保存图片并更新图库
  6. 深圳软件测试培训:软件测试的工资高还是开发者工资高?
  7. 步进电动机速度调节和方向控制实验
  8. linux 安装bt下载软件,centos6.3安装linux下的BT软件qbittorrent的方法
  9. linux双屏鼠标移,ubuntu如何实现双屏显示
  10. TINA-TI安装教程