社区导航

 
快捷导航
  • 首页
  • 论坛
  • 查看新帖
  • 最新回复
  • 社区活动
  • 联系管理员
  • 消灭零回复
  • E金币兑换
  • 干货
搜索
查看: 2574|回复: 8

[原创] EEDrone开源四旋翼从零开始(5)--git基础

[复制链接]

483

TA的帖子

21

TA的资源

版主

Rank: 6Rank: 6

发表于 2017-1-5 22:20:51 | 显示全部楼层 |阅读模式
本帖最后由 lb8820265 于 2017-1-5 23:32 编辑

注册和环境搭建
     先注册github.com的账号,官方网站: https://github.com/
     需要一个邮箱,同时也要一个昵称,我的是flyloong,之后会用到。
     下载git,地址:https://git-scm.com/downloads
     安装时直接next到最后。
配置git
       任意目录下右击,选择“Git Bash Here”,会弹出窗口,
    1)    先输入如下,,注意ssh-keygen之间是没有空格的,其他的之间是有空格的
  1. ssh-keygen –t rsa –C “邮箱地址”
复制代码
    2)   回车之后,会出现一行,让你输入一个保存密钥的地方,括号里面是它默认的位置,这里会让你输入几次内容,都不用输入,直接回车就可以了,可以看到如图的效果:
QQ截图20170105231407.png
    3)     回车之后,这样密钥就生成了,可以用记事本打开id_rsa.pub,然后全部复制,网站上去配置一下ssh key,点击箭头指示的三角图标,选择Settings,然后点击左侧的SSH Keys,之后点击右侧的Add SSH Key,这样就会出现添加SSH Key的界面,在Title这一栏填一个名字,名字随意起,之后打开刚才生成的那个文件id_rsa.pub,全选复制里面的内容到Key这一栏中,点击Add Key按钮完成操作,这时你填的邮箱会收到一封确认的邮件,不用管它。
2.png
     4)  验证一下是否设置成功,在git bash下输入如下命令:
  1. ssh –T git@github.com
复制代码
QQ截图20170105231454.png
        如果你是第一次,会让你输入yes或no,这时输入yes就可以了,其它显示就和我这个是一样的。如果你的是出现不是这些内容,有可能是显示权限问题什么的,就应该是我上面提到的那种情况,你看一下你生成密钥时是否操作正确,目录下是否有那个known_hosts这个文件。
     5)      现在配置一下用户名和邮箱:
  1. git config –global user.name “用户名”
  2. git config –global user.email “邮箱”
复制代码
4.png
         到现在为止,我们就算把Git和github配置完了,现在就来托管我们的项目吧。
项目托管
        回到github网页,点击New repository按钮,弹出如下界面,第一行填仓库名,就叫个text,第二行是对这个仓库的描述,之后那个Public就是公共仓库的意思,接下来的README就是在仓库里创建一个README文件,可以往里写一些介绍你这个项目的功能之类的东西,再下面那个Add gitignore按钮,可以选择你这个项目是用什么语言之类的,后面那个License是用来说明该项目遵从什么开源协议,例如我们的EEDrone遵从BSD3,选择后会在更目录下生成一个LICENSE文件,最后点击“Create repository”
5.png
6.png
       然后到需要托管的项目中去,例如项目文件如下:
7.png
        这里最重要的一件事就是添加”.gitignore”文件,整个有几百兆,其中大部分是IDE生成的编译中间文件,这些并没有用,每次编译都会重新生成,可以在IDE里面清除,或者写一个批处理文件清除,都没有添加忽略文件来的方便,直接用文本文件新建一个就好,内容如下:
  1. EWARM/**
  2. !*.icf
  3. !*.eww
  4. !*.ewp
  5. !*.ewd
  6. !*.s
  7. MDK-ARM/**
  8. !*.uvoptx
  9. !*.uvprojx
  10. !*.s
  11. SW4STM32/EEDrone/**
  12. !*.cproject
  13. !*.project
  14. !*.xml
  15. !*.ld
  16. SI/
复制代码
     举例说明如下:
“EWARM/**”这句话的意思是将EWARM文件夹下的内容除需要保留的全部删掉,但是保留该文件夹
“!*.icf“这是EWARM文件夹下将后缀为icf的全部保留
“SI/”是将整个SI文件夹全部删掉
    如果大家是使用IAR工程就使用上面的几句代码就好,Keil就选用中间的
      写好保存后右击选择“Git Bash Here”
     1)  输入 git init,来完成初始化工作。这时候会自动生产一个隐藏文件夹”.git”
  1. git init
复制代码
    2)  增加对我们github上创建的test仓库的管理。其中origin是一个名字相当于一个宏定义,可以任意取, flyloong是我在网站上注册时使用的用户名,test.git是我为这个项目建立的仓库名。
  1. git remote add origin git@github.com: flyloong/test.git
复制代码
    3)  由于我建立仓库的时候创建README.md之时,已经算一次提交了,我需要先在本地同步一下仓库的内容。本地就会多一个README.md文件。
  1. git pull origin master
复制代码
     或者git pull git@github.com: flyloong/test.git
     效果如下:
8.png
      此时可以修改代码或者直接上传代码。
     4)  下面就要把我刚创建的文件上传到到仓库上去了,首先执行增加命令,如下:
  1. git add .    (这后面是一个英文的句号)
复制代码
      add后面加了一个点,是想要提交所有文件,如果想提交指定的文件,可以写文件名。
     5)行完增加命令后,要执行提交命令,如下:
  1. git commit –m “这里写下你自己的记录本次提交内容的信息”
复制代码
     -m后面跟提示信息,这个提示信息是一定要写的,不仅是规则,同时也方便我们记录我们提交的过程,写清晰为什么提交或修改了什么是非常有用的。
      6)提交完成后,我们就要把它推送到远程仓库上去了,命令如下:
  1. git push origin master
复制代码
9.png
10.png
       这样就完成了我们要做的所有任务
      之后可以继续修改代码,那么只需要执行最后面三步就可以了:
  1. git add .  
  2. git commit –m “这里写下你自己的记录本次提交内容的信息”
  3. git push origin master
复制代码
      如果有新的版本发布,又想要留着之前的版本,那么就可以添加tag标签了,如下:
  1. git tag V0.01
复制代码
     其中V0.01是标签名
     上传到网上仓库
  1. git push origin –tags
复制代码
11.png
     在github网站上就有了标签了如下:
12.png
协同工作
      如果想要多人同时开发,例如有账号”lb8820265”想来共同开发,步骤如下:
1)      Fork,
13.png
2)      Clone
在需要下载的地方如下输入如下指令:
  1. git clone https://github.com/flyloong/test.git
复制代码
3)      修改上传
参考上面,这里就将readme.md里面的test改成test2。
4)      在”lb8820265”用户中点击”Pull requests”:
14.png
5)      在下方可以查看本次的修改,点击”Greate pull request”
15.png
6)      添加说明:
16.png
也可以不写,点击”Greate pullrequest”
7)      同意合并
flyloong会有提醒如下:
17.png
     点击弹出如下:
18.png
       点击”Merge pull request”就可以合并修改了,点击Fileschanged可以查看修改的内容:
19.png
      这样就完成了协调开发了。这是从个人的仓库中fork,通常开源项目是放在github组织上的,例如我们的EEDrone项目,地址是:https://github.com/eedrone这样就可以有多个管理员,都可以允许合并操作,其他的操作类似。
其他常用指令
列出remote:                           git remote (在后面添加-v显示显示地址)
删除remote:                           git remote rm 取的名字
在本地新建一个分支:               git branch Branch1
切换到你的:新分支:                  git,checkout ,Branch1
将新分支发布在github上:       git pushorigin Branch1
在本地删除一个分支:              git branch -d Branch1
在github远程端删除一个分支:git push origin :Branch1   (分支名前的冒号代表删除)
删除错误提交的commit:
gitreset --hard <commit_id>
git push<origin> HEAD --force
其中commit_id是ID号,可以通过git log看到只要输入前面6个就可以,origin是名字
获取commit列表:                 git log

git的官方文档:https://git-scm.com/doc

评分

2

查看全部评分

QQ:252669569


回复

使用道具 举报

18

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2017-1-6 08:25:27 | 显示全部楼层
这是我收藏的学GitHub的视频,希望对大家有帮助。同时希望 EEDrone开源四旋翼能搞起来!

链接:http://pan.baidu.com/s/1i5hZ4hv 密码:7kqb


回复

使用道具 举报

83

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2017-1-6 08:26:50 | 显示全部楼层
每天进步一点点
博采众长,回馈大众!!


回复

使用道具 举报

18

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2017-1-6 08:28:34 | 显示全部楼层
这是我收藏的学习GitHub的视频教程,希望对大家有帮助,同时希望EEDrone开源四旋翼能搞起来。

链接:http://pan.baidu.com/s/1i5hZ4hv 密码:7kqb


回复

使用道具 举报

1415

TA的帖子

2

TA的资源

纯净的硅(中级)

Rank: 5Rank: 5

测评达人

发表于 2017-1-6 10:09:10 来自手机 | 显示全部楼层
强力支持李总!!


回复

使用道具 举报

832

TA的帖子

5

TA的资源

版主

Rank: 6Rank: 6

发表于 2017-1-6 10:52:53 | 显示全部楼层
很不错的分享,加油


回复

使用道具 举报

6265

TA的帖子

4

TA的资源

版主

Rank: 6Rank: 6

发表于 2017-1-8 19:40:47 | 显示全部楼层
希望能够搞起来!
生活就是油盐酱醋再加一点糖,快活就是一天到晚乐呵呵的忙
===================================
做一个简单的人,踏实而务实,不沉溺幻想,不庸人自扰


回复

使用道具 举报

58

TA的帖子

1

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2017-4-29 21:18:44 | 显示全部楼层
怎么添加添加”.gitignore”文件啊,新建文本文档?要求必须得有一个文件名啊

点评

你直接从别人的工程里面复制一个过来然后自己修改里面的内容。 或者可以如下面的方法: 1. 首先准备一个 test.gitignore 文件 , 用文本编辑器进行编辑即可。 2. 创建一个 demo.txt 里面写入:ren test.gitignore  详情 回复 发表于 2017-5-1 21:33


回复

使用道具 举报

483

TA的帖子

21

TA的资源

版主

Rank: 6Rank: 6

 楼主| 发表于 2017-5-1 21:33:38 | 显示全部楼层
sogaside 发表于 2017-4-29 21:18
怎么添加添加”.gitignore”文件啊,新建文本文档?要求必须得有一个文件名啊

你直接从别人的工程里面复制一个过来然后自己修改里面的内容。
或者可以如下面的方法:
1. 首先准备一个 test.gitignore 文件 , 用文本编辑器进行编辑即可。
2. 创建一个 demo.txt 里面写入:ren test.gitignore .gitignore
3. 把 demo.txt 重命名为 demo.bat。双击 demo.bat
QQ:252669569


回复

使用道具 举报

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

本版积分规则

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

小黑屋|手机版|Archiver|电子工程世界 ( 京ICP证 060456

GMT+8, 2018-7-18 03:08 , Processed in 0.333157 second(s), 18 queries , Gzip On, Redis On.

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