找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1137|回复: 1
打印 上一主题 下一主题
收起左侧

GitHub常用命令

[复制链接]
跳转到指定楼层
楼主
ID:370603 发表于 2018-7-13 00:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
git介绍
  • webstorm:代码编辑器
  • 浏览器:代码解析器
  • git:代码管理工具
  • 版本控制系统:集中式(SVN),分布式(git);
  • 集中式:需要一台中央服务器,每次需要从中央服务器拉取最新的代码,然后修改上传(必须联网);
  • 分布式:每个人的电脑就是一台服务器,不需要网络;
常用的DOS命令
  • 1.ping www.baidu.com -t:测试网速;
  • 2.Ctrl+C:结束当前正在运行的操作;
  • 3.exit:退出当前窗口;
  • 4.ipconfig -all:查看IP地址和物理地址,子网掩码,DNS等信息;
  • 5.cls:清屏;
  • 6.cd xxx:进入到指定的文件目录(Windows电脑需要先进入到对应的磁盘E:);
  • 7.cd ../:上一级目录;后面加上../就再往上一级;
  • 8.cd ./:当前目录;
  • 9.cd /:根目录;
  • 10.dir:查看但前目录下所有的文件;
  • 11.mkdir:创建文件夹;md
  • 12.cop con xxx.xx:创建文件并且给文件中输入内容,输入完成后,用Ctrl+c结束并保存;
  • 13.touch xx.xx:创建文件
  • 13.del xxx.xx:删除文件;
  • 14.rmdir xxx:删除文件夹;
  • 15.echo 文件内容>文件名:建立新文件或修改文件内容,在原内容后边增加使用>>双箭头;
  • 19.cat xx.xx:查看使用echo创建的文件内容;
git命令
工作区-暂存区-历史区-远程区
  • 1.git --version:查看git版本;
  • 2.clear:清屏;
  • 3.git init:初始化;
  • 4.git config --global user.name "Guofinni":本地仓库配置git用户名;
  • 5.git config --global user.email "guojiafen@126.com":本地仓库配置git邮箱;
  • 6.git config --list:查看配置信息列表;
  • 7.git remote add origin https://github.com/Guofinni/project-1.git本地仓库添加远程仓库信息;
  • 8.git remote -v:检测是否关联成功(本地和远程的关联情况);
  • 9.git add . git add -A:上传所有文件夹(暂存区);
  • 10.git add xx.xx:上传文件(暂存区);
  • 11.git commit -m"第一次提交":提交的信息“注释”(历史区);
  • 12.git push origin master:推送到远程仓库,origin是一开始设置的仓库名,master是远程仓库的主分支名,一般情况下都是主要的分支master(远程区);
  • 13.git clone https://github.com/monty086/201805js.git xxx:克隆远程仓库,xxx是文件夹名;
  • 14.git pull origin master:拉取远程区文件,更新本地仓库;
  • 15.git fetch --all:命令用于从另一个存储库下载对象和引用,从一个或多个其他存储库中获取分支和/或标签(统称为“引用”)以及完成其历史所必需的对象;
  • 16.git reset –-soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可;
  • 16.git reset -–hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容,撤销的commit中所包含的修改也被冲掉;
  • 17.git reset HEARD^:git将提交回滚到了上一次版本, 同时清空了暂存区(也称stage或index,下文用stage代替暂存区),但是工作区仍然保留,所以git status时,显示时当前工作区相对于上一次提交版本 commit的变动。使用这种模式不用害怕吧,他并不会清除你的工作区,你在本次 commit做的任何操作都不会消失;
  • 17.git reset HEARD~2:退回到指定版本(2:指定第2次的版本)
  • 17.git status:查看文件的状态,如果文件只存在本地,不在暂存区,那么文件是红色的,如果文件在暂存区还没到历史区,颜色是绿色;提交到历史区后执行该命令,结果为nothing to commit, working tree clean;
  • 18.git log --graph --oneline:查看当前仓库历史提交版本
git和GitHub同步
    • 先建立一个远程仓库
    • 让本地的git仓库和远程的建立关联

git remote -v:查看所有的关联信息 git remote add xxx [远程仓库git地址]:建立关联(xxx一般为origin) git remote remove xxx:移除关联
    • 把本地的信息推送到远程仓库上,或者从远程仓库拉取最新的信息到本地仓库

我们本地推送和拉取的信息既有代码,也有版本信息,与其说推送和拉取,不如说是和远程仓库保持信息同步 推送之前我们都应该先拉取 git pull origin master:(origin:是和远程仓库关联的名字,以自己设置的为主)(master:从远程仓库master分支拉取最新的信息) git push origin master:把自己本地的信息推送到远程的仓库master分支下
  • (如果名字是origin,分支走的也是master分支,后面可以都不写,也就是执行git pull/git push)
  • 团队协作开发的时候leader会在自己的GitHub账号下创建一个远程仓库,那么团队其他成员在向这个仓库推送信息的时候,使用自己的账号是没有权限的,我们需要把当前这个远程仓库在GitHub中创建工作群组,让更多任用自己的账号也有操作权限;


  • fork到自己账户的项目怎么更新
1)准备一个本地目录,并克隆自己fork的项目到本地:    "$ git clone https://github.com/Guofinni/201805js"2)然后cd 进入仓库(这里我直接进入项目根目录下),执行命令:    "$ git cd 201805js"    "$ git remote -v"可以在cad控制台查看本地项目目录,如下:        > origin  https://github.com/Guofinni/201805js (fetch)        > origin  https://github.com/Guofinni/201805js (push)(3)我们可以看到,只有我们自己的远程仓库,下面clone原项目到该仓库    "$ git remote add upstream https://github.com/monty086/201805js"        "$ git remote -v"查看本地项目目录是否更新:        > origin  https://github.com/Guofinni/201805js (fetch)        > origin  https://github.com/Guofinni/201805js (push)        > upstream        https://github.com/monty086/201805js (fetch)        > upstream        https://github.com/monty086/201805js (push)        'upstream' 相当于一个别名,名字随便取。(4)这时有两个远程分支,我们继续 fetch,然后把原项目更新的内容fetch到本地    "$ git fetch upstream"    (5)查看下分支:    "$ git branch -av"        > * master                  d7ffbd2 更新1        > remotes/origin/HEAD     -> origin/master        > remotes/origin/master   d7ffbd2 更新1        > remotes/upstream/master d2590e9 添加(6)一个本地分支master,三个远程分支,最后一行的就是要合并的 merge    "$ git checkout master"切换到本地分支    "$ git merge hunter/master"合并分支(7)如果有冲突的话,需要丢掉本地分支:   不冲突就不执行此步 "$ git reset –hard hunter/master"8)这时你的当前本地的项目变成和原作者的主项目一样了,可以把它提交到你的GitHub库    "$ git add .""    "$ git commit -am‘更新到原作者的主分支’""    "$ git push origin"    "$ git push -u origin master -f" –强制提交
  • webstorm:代码编辑器
  • 浏览器:代码解析器
  • git:代码管理工具
  • 版本控制系统:集中式(SVN),分布式(git);
  • 集中式:需要一台中央服务器,每次需要从中央服务器拉取最新的代码,然后修改上传(必须联网);
  • 分布式:每个人的电脑就是一台服务器,不需要网络;
常用的DOS命令
  • 1.ping www.baidu.com -t:测试网速;
  • 2.Ctrl+C:结束当前正在运行的操作;
  • 3.exit:退出当前窗口;
  • 4.ipconfig -all:查看IP地址和物理地址,子网掩码,DNS等信息;
  • 5.cls:清屏;
  • 6.cd xxx:进入到指定的文件目录(Windows电脑需要先进入到对应的磁盘E:);
  • 7.cd ../:上一级目录;后面加上../就再往上一级;
  • 8.cd ./:当前目录;
  • 9.cd /:根目录;
  • 10.dir:查看但前目录下所有的文件;
  • 11.mkdir:创建文件夹;md
  • 12.cop con xxx.xx:创建文件并且给文件中输入内容,输入完成后,用Ctrl+c结束并保存;
  • 13.touch xx.xx:创建文件
  • 13.del xxx.xx:删除文件;
  • 14.rmdir xxx:删除文件夹;
  • 15.echo 文件内容>文件名:建立新文件或修改文件内容,在原内容后边增加使用>>双箭头;
  • 19.cat xx.xx:查看使用echo创建的文件内容;
git命令
工作区-暂存区-历史区-远程区
  • 1.git --version:查看git版本;
  • 2.clear:清屏;
  • 3.git init:初始化;
  • 4.git config --global user.name "Guofinni":本地仓库配置git用户名;
  • 5.git config --global user.email "guojiafen@126.com":本地仓库配置git邮箱;
  • 6.git config --list:查看配置信息列表;
  • 7.git remote add origin https://github.com/Guofinni/project-1.git本地仓库添加远程仓库信息;
  • 8.git remote -v:检测是否关联成功(本地和远程的关联情况);
  • 9.git add . git add -A:上传所有文件夹(暂存区);
  • 10.git add xx.xx:上传文件(暂存区);
  • 11.git commit -m"第一次提交":提交的信息“注释”(历史区);
  • 12.git push origin master:推送到远程仓库,origin是一开始设置的仓库名,master是远程仓库的主分支名,一般情况下都是主要的分支master(远程区);
  • 13.git clone https://github.com/monty086/201805js.git xxx:克隆远程仓库,xxx是文件夹名;
  • 14.git pull origin master:拉取远程区文件,更新本地仓库;
  • 15.git fetch --all:命令用于从另一个存储库下载对象和引用,从一个或多个其他存储库中获取分支和/或标签(统称为“引用”)以及完成其历史所必需的对象;
  • 16.git reset –-soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可;
  • 16.git reset -–hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容,撤销的commit中所包含的修改也被冲掉;
  • 17.git reset HEARD^:git将提交回滚到了上一次版本, 同时清空了暂存区(也称stage或index,下文用stage代替暂存区),但是工作区仍然保留,所以git status时,显示时当前工作区相对于上一次提交版本 commit的变动。使用这种模式不用害怕吧,他并不会清除你的工作区,你在本次 commit做的任何操作都不会消失;
  • 17.git reset HEARD~2:退回到指定版本(2:指定第2次的版本)
  • 17.git status:查看文件的状态,如果文件只存在本地,不在暂存区,那么文件是红色的,如果文件在暂存区还没到历史区,颜色是绿色;提交到历史区后执行该命令,结果为nothing to commit, working tree clean;
  • 18.git log --graph --oneline:查看当前仓库历史提交版本
git和GitHub同步
    • 先建立一个远程仓库
    • 让本地的git仓库和远程的建立关联

git remote -v:查看所有的关联信息 git remote add xxx [远程仓库git地址]:建立关联(xxx一般为origin) git remote remove xxx:移除关联
    • 把本地的信息推送到远程仓库上,或者从远程仓库拉取最新的信息到本地仓库

我们本地推送和拉取的信息既有代码,也有版本信息,与其说推送和拉取,不如说是和远程仓库保持信息同步 推送之前我们都应该先拉取 git pull origin master:(origin:是和远程仓库关联的名字,以自己设置的为主)(master:从远程仓库master分支拉取最新的信息) git push origin master:把自己本地的信息推送到远程的仓库master分支下
  • (如果名字是origin,分支走的也是master分支,后面可以都不写,也就是执行git pull/git push)
  • 团队协作开发的时候leader会在自己的GitHub账号下创建一个远程仓库,那么团队其他成员在向这个仓库推送信息的时候,使用自己的账号是没有权限的,我们需要把当前这个远程仓库在GitHub中创建工作群组,让更多任用自己的账号也有操作权限;


  • fork到自己账户的项目怎么更新
1)准备一个本地目录,并克隆自己fork的项目到本地:    "$ git clone https://github.com/Guofinni/201805js"2)然后cd 进入仓库(这里我直接进入项目根目录下),执行命令:    "$ git cd 201805js"    "$ git remote -v"可以在cad控制台查看本地项目目录,如下:        > origin  https://github.com/Guofinni/201805js (fetch)        > origin  https://github.com/Guofinni/201805js (push)(3)我们可以看到,只有我们自己的远程仓库,下面clone原项目到该仓库    "$ git remote add upstream https://github.com/monty086/201805js"        "$ git remote -v"查看本地项目目录是否更新:        > origin  https://github.com/Guofinni/201805js (fetch)        > origin  https://github.com/Guofinni/201805js (push)        > upstream        https://github.com/monty086/201805js (fetch)        > upstream        https://github.com/monty086/201805js (push)        'upstream' 相当于一个别名,名字随便取。(4)这时有两个远程分支,我们继续 fetch,然后把原项目更新的内容fetch到本地    "$ git fetch upstream"    (5)查看下分支:    "$ git branch -av"        > * master                  d7ffbd2 更新1        > remotes/origin/HEAD     -> origin/master        > remotes/origin/master   d7ffbd2 更新1        > remotes/upstream/master d2590e9 添加(6)一个本地分支master,三个远程分支,最后一行的就是要合并的 merge    "$ git checkout master"切换到本地分支    "$ git merge hunter/master"合并分支(7)如果有冲突的话,需要丢掉本地分支:   不冲突就不执行此步 "$ git reset –hard hunter/master"8)这时你的当前本地的项目变成和原作者的主项目一样了,可以把它提交到你的GitHub库    "$ git add .""    "$ git commit -am‘更新到原作者的主分支’""    "$ git push origin"    "$ git push -u origin master -f" –强制提交

评分

参与人数 1黑币 +5 收起 理由
muyichuan2012 + 5 很给力!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:311614 发表于 2018-7-13 16:03 | 只看该作者
好东西,感谢分享。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表