最容易上手的Git手册

Git 基本使用

新手快速上手 Git

初次使用 Git 命令

  • git init // 初始化版本库
  • git add . // 添加文件到版本库(只是添加到缓存区),.代表添加文件夹下所有文件
  • git commit -m "first commit" // 把添加的文件提交到版本库,并填写提交备注

到目前为止,我们完成了代码库的初始化,但代码是在本地,还没有提交到远程服务器,所以关键的来了,要提交到就远程代码服务器,进行以下两步:

  • git remote add origin 你的远程库地址 // 把本地库与远程库关联
  • git push -u origin master // 第一次直接推送时到远程厂库中

第二次提交版本使用 Git 命令

  • git add . // 添加文件到版本库(只是添加到缓存区),.代表添加文件夹下所有文件
  • git commit -m "提交需要的备注" // 把添加的文件提交到版本库,并填写提交备注
  • git push origin master // 第一次推送后,直接使用该命令即可推送修改

强制更新

在使用Git的过程中,有些时候我们只想要git服务器中的最新版本的项目,对于本地的项目中修改不做任何理会,就需要用到Git pull的强制覆盖,具体代码如下:

$ git fetch --all
$ git reset --hard origin/master 
$ git pull

Git pull的强制覆盖本地文件在自动化部署项目中很有作用,比如用SaltStack部署web项目,强制覆盖可以保持与服务器内容一致。

上面的操作有点复杂,直接用git checkout 就ok了

远程拉取指定版本

glide 为例,目前官网最新是 4.9.0 版本,如果要编译 4.8.0 版本的 jar,该如何操作呢。

  1. 首先clone项目到本地 git clone https://github.com/bumptech/glide.git

  2. 然后进入项目 cd glide/

  3. 查看历史版本 git tag

  4. 拉取指定版本 git checkout tags/1.2.1

  5. 编译 jar 包 ./gradlew assemble

  6. Push 单个 tag

    git push origin [tagname]

  7. 强制与远端同步

    git pull

  8. 删除 tag

    1. 删除本地 tag

      git tag -d [tagname]

    2. 删除远端 tag

      git push origin :refs/tags/[tagname]

  9. update 某个文件

    git fetch

    git checkout -m 2408ca5 文件名

  10. 打一个 tag

Git tag [tagname]

//根据描述来打 tag

git tag v10433 -m "修复火警类型转换异常问题" 82d7f7c

  1. 删除一个本地分支

git branch -d [name]

  1. 检出一个新分支

git checkout -b 11120c30443f7e3861d78225fe0cd949c131cc19

  1. 如何处理一个 pull request

https://blog.lzuer.net/2016/10/10/github-pr/

  1. Git 回退到某一个版本
git reset --hard [commit id]

  1. Git push 大文件处理
https://git-lfs.github.com/

  1. 合并某个分支某个文件代码
git checkout 分支名 分支文件

## git error

1、error: RPC failed; curl 18 transfer closed with outstanding read data remaining

        遇到的问题一:

    error: RPC failed; curl 18 transfer closed with outstanding read data remaining
    fatal: The remote end hung up unexpectedly
    fatal: early EOF
    fatal: index-pack failed

      #    解决方式一, 网上大部分解决措施:命令终端输入 
      #   这个错误是因为项目太久,tag资源文件太大
       git config --global http.postBuffer 524288000

强制 push

git push -f origin master

git push 大文件

#1\. 直接从官网下载安装包 [](https://git-lfs.github.com/)

#2\. 解压进入包类输入命令 
        git lfs install

#3\. 在项目中输入命令 追踪 所有 .a 文件
        git lfs track "*.a"
        //git lfs untrack *.txt
#4\. 之后操作跟以往不变  add commit push

git 查看需要删除远程的文件

#查看
git rm -r -n --cached app/build
#删除 
git rm -r --cached app/build
# 查看 git 相关文件占用的空间
git count-objects -v 
# 查看 .git 文件夹占用磁盘空间
du -sh .git 

git 删除所有提交记录

删除.git文件夹可能会导致git存储库中的问题。如果要删除所有提交历史记录,但将代码保持在当前状态,可以按照以下方式安全地执行此操作:

#尝试  运行  
git checkout --orphan latest_branch
添加所有文件
#git add -A
#提交更改
git commit -m "commit message"
#删除分支
git branch -D master
#将当前分支重命名
git branch -m master
#最后,强制更新存储库。
git push -f origin master

修改已经提交的 message

#1.输入如下命令
git commit --amend
#2\. 在编辑框中输入修改的 message

本地仓库同步远程仓库

git fetch origin master

分支合并

//将 dev 分支合并到 merge 中
git  merge dev

从 Git Large File Storage 中删除文件

https://docs.github.com/cn/github/managing-large-files/removing-files-from-git-large-file-storage

BUG

  • 网页 check ping

    http://ping.chinaz.com/www.github.com
    
    
  • git clone

    LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443

    vim ~/.gitconfig
    把里面关于https的配置删掉,然后就可以了
    
    

(每天学习一点点.每天进步一点点,分享不宜路过点个赞呀,喜欢的点个关注后续更新不断)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 151,829评论 1 331
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 64,603评论 1 273
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 101,846评论 0 226
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 42,600评论 0 191
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 50,780评论 3 272
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 39,695评论 1 192
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,136评论 2 293
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 29,862评论 0 182
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 33,453评论 0 229
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 29,942评论 2 233
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,347评论 1 242
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 27,790评论 2 236
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,293评论 3 221
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 25,839评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,448评论 0 181
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 34,564评论 2 249
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 34,623评论 2 249

推荐阅读更多精彩内容

  • Git常用命令手册[#git%E5%B8%B8%E7%94%A8%E5%91%BD%E4%BB%A4%E6%89%...
    galenu阅读 464评论 0 0
  • 以下内容是我在学习和研究Git时,对Git操作的特性、重点和注意事项的提取、精练和总结,可以做为Git操作的字典,...
    科研者阅读 3,411评论 2 19
  • Git是一个十分优秀的版本控制工具,但仅仅依靠版本控制工具,还不能保证在多人协作的情况让项目的版本流转有条不紊,版...
    科研者阅读 2,264评论 0 7
  • 1. 新建代码库 参考资料:Git 基础 - 远程仓库的使用[https://git-scm.com/book/z...
    Super超人阅读 528评论 4 1
  • 本文汇总了Git的一些技巧 和 我在使用Git的过程中遇到的问题及解决方案 目录 1. 不显示中文[#1-%E4%...
    科研者阅读 1,135评论 0 0