您的位置:首页 > 编程语言

github:初学者使用设置与上传项目

2017-12-13 15:14 197 查看
以前介绍过 SVN,这次我介绍 git,这两个都是团队混合开发中,用来管理项目的插件;



  GitHub有一个很强大的功能就是,
你在服务器上边可以创建一个库,多人开发的时候,大家的写码速度不一样,
有快慢,有对错,需要花长时间整理,
  怎么在汇总所有人的代码之后发现错误等等一系列问题?我们就用到了GitHub这个软件!
我们在GitHub服务器上有一个主仓库,这里用来储存你的所有代码,
如果不付费的话是所有人都可以看的,如果你不想让别人看到你的代码,
可以选择付费仓库。

  我们创建了主仓库之后,就可以在电脑上创建分支,之后你就可以在电脑上完成自己的代码,
写完之后直接同步在电脑的分支,当你认为可以上传的自己的主仓库时,就可以申请更新,
  当通过审核的时候,你代码就出现在了自己的主仓库中,这样全世界的程序员都可以查看你的代码。
全世界现在已经有300万的注册用户,甚至还有一些相当知名的开源项目也在其中公布代码。
在GitHub上你可以看到很多计算机领域的精英所分享的自己的代码。
这是GitHub的两个主要优点,适合团队协作,以及下载其他优秀者的代码。

今天,GitHub已是:
一个拥有143万开发者的社区。其中不乏Linux发明者——Torvalds这样的顶级黑客,
以及Rails创始人DHH这样的年轻极客。
· 这个星球上最流行的开源托管服务。目前已托管431万git项目,不仅越来越多知名开源项目迁入GitHub,比如Ruby on Rails、jQuery、Ruby、Erlang/OTP;近三年流行的开源库往往在GitHub首发,例如:BootStrap、Node.js、CoffeScript等。alexa全球排名414的网站。

https://github.com/ 这是GitHub的官方网站,在官网上可以注册属于自己的GitHub账号,
网上是全英文的,对于英语不好的同学建议使用谷歌浏览器,
谷歌浏览器可以翻译网页变为中文使用起来十分方便。



______________________________________________________________________________

如果熟练的使用github,阅读全英文的页面,对于初学者比较怕,
希望大家耐心一点!

一、注册github账号(略!)
(由于这个网站属于国外,访问比较慢,不过没有墙!)

二、安装 git,这个插件用来上传项目到github,下载安装git(略!)
(不会找就去 360管家,这里有一键安装的,一直点击下一步)

三、在github上新建一个仓库,用来储存上传的项目

我们创建的是一个github仓库,一个仓库里只能存放(或叫对应)一个项目。





四、创建密匙

(SSH keys)
我们如何让本地git项目与远程的github建立联系呢?
之里就用的密钥。通俗点叫口令吧!
打开你安装的git,运行 git-bash.exe
输入dos命令: (bash里面自动有 $ 的!)

1、检查本机的ssh密钥
$ cd ~/.ssh 
如果提示:No such file or directory 说明你是第一次使用git。
————————————————————————————
如果不是第一次使用,请执行下面的操作,清理原有ssh密钥。
$ mkdir key_backup 
$ cp id_rsa* key_backup 
$ rm id_rsa*
——————————————————————————————

2、生成新的密钥:(请输入你的邮箱,是注册github
的邮箱,可以是QQ邮箱!)
ssh-keygen –t rsa –C “xxxx@qq.com”
在回车中会提示你输入一个密码,这个密码会在你提交项目时使用,
如果为空的话提交项目时则不用输入。这个设置是防止别人往你的项目里提交内容。

3、提取 key
打开本地C:\Documents and Settings\Administrator\.ssh\id_rsa.pub文件。
此文件里面内容为刚才生成人密钥。
一般生成正确的key,后面就是你的邮箱地址,
如果不是你的邮箱地址,那么请重新删了.ssh文件夹,
重新尝试!




github,你的头像-settings,来到这里 ssh and gpg keys!
选择 ssh keys,输入你的key,确定!



五、开始初始化部署项目

输入dos命令

$ ssh –T git@github.com
一般都可以过,如果这里报错,那么



请去到
Git\etc ,找 hosts,这个文件夹,
先ping github.com ,看看你的IP 是什么,

然后我们 添加上去,比如我的也报错,

ping出来的IP 是192.30.255.112,那么就在 hosts里面加一句:

#192.30.255.112 github.com

如果提示:Hi
defnngj You've successfully authenticated, but GitHub does not provide shell access. 
说明你连接成功了。
——————————
如果不行,重启一下试试,或者去百度一下原因

ssh 

t
git@github.com(若不成功,则去掉

t参数)

六、设置用户信息

这一步不是很重要,但是不设置又不行,
就是在git中设置用户名 和 邮箱:

$ git config --global user.name "ssh159"
//给自己起个用户名
$ git config --global user.email "xxxx@qq.com"
//填写自己的邮箱

(别照着我的用户名和邮箱抄啊!!!)

$ git config --global github.user ssh159
//github 上的用户名 
$ git config --global github.token e97279836f0d415a3954c1193dba522f

本来应该去 Settings-admin,寻找 token的,但是找不到,
于是借 鸿洋dalao的teken使用一下,也是可以过的

注:官方文档中未找到 github.user 和 github.token 两个变量,
使用 git help config


以上都是上传项目之前的准备工作,已经完成了!

七、开始上传项目

简单说一下dos命令吧:
ls :查看当前目录的文件
cd /d :进入 D盘
cd java/ :进入java文件夹
cd .. :返回上一级文件夹

_______________________________
首先去到你要上传的项目的目录,
比如我现在要ssh框架,xiaomi 的文件夹中,
先初始化:

$ git init 



$ git
status :查看当前文件夹的状态,如果是第一次上传,那么全部文件为红色!
$ git add . :注意,后面有个点号,这个是上传当前文件夹,全部内容!
把文件全部搬运到仓库里面!

PS:git的强大之处,就是用本地仓库,没有网络也可以先将更新的内容提交到仓库。


$ git commit -m "new natter" :对你更新或者更改的内容做一个描述!
$ git remote add origin git@github.com:ssh159/ssh_xiaomi.git
//设置你要提交的仓库地址 ,就是第三步,我们去页面new 的仓库!
——————————————————————————
如果打错了,提示出错信息:fatal: remote origin already exists.
可以输入 : $ git remote rm origin ,删掉你的错误仓库地址,再重新设置!
——————————————————————————
$ git remote -v :查看当前的仓库地址!
$ git push -u origin master :
上传全部文件到仓库!

大功告成!

八、其他设置

1、如果回到家里,想继续修改公司的项目代码?
将项目copy 到你的本地,存放到你设置的目录
$ git clone git@github.com:ssh159/ssh_xiaomi.git 

2、如果本地有了这个项目,你只是想更新:
$ git fetch origin :获取远程更新!
$ git fetch origin/master :吧更新的内容合并到本地分支/master
————————————————————

3、项目中删除了一些文件,如何提交?
假如远程仓库中已经存了aaa这个文件,我fetch了下来,
并删除了aaa这个文件,想再push上到远程仓库中,
并使远程仓库中的项目被新的修改覆盖(也是是远程仓库中的aaa也被删除)

$ git status //可以看到我们删除的哪些文件

$ git add . //删除之后的文件提交git管理。

$ git rm src/com/hzh/hibernate/dao/aaa.java 
//移除我们删除的那个文件,不然git不允许我们往远程仓库提交。

(Ps: 如果你想删除的是某个目录(java包),这里想移除整个目录的内容。)

$ git rm src/com/hzh/hibernate/bbb/ -r 
 // -r 会把bbb/目录下的所有内容一次性移动。

------------------------------------------------------------------------
远程创建了一个新仓库,本地创建了一个新项目,如何使新的项目与仓库对应起来?

其实,这个也很简单,只是我当时对那些命令不太理解,所以比较模糊,不知如何对应。

$ git remote add origin git@github.com:ssh159/ssh_xiaomi.git

//还是这个命令,在你push项目之前加上这一句就OK了。

git@github.com:defnngj/hibernate-demo.git 就是你常见的新仓库的地址啊。
git切换到新项目下,在push之前,加上这一句,
我们创建的新仓库就与新项目建立了连接。

注意:

1.生成SSH keys的过程可参考官方文档
https://help.github.com/articles/generating-ssh-keys

2.使用Git Bash执行命令,而不要用windows的cmd执行,以免因系统中安装过cygwin和MinGw等工具产生不必要的问题。

3.GitHub官方推荐使用HTTPS的方式push和pull代码

4.使用HTTPS方式commit代码时用户名不会关联到Files中,也不会显示在Contributions中。但是在Public Activity中本地用户名是关联的(链接到主页)。

5.要将用户名关联到GitHub用户,则user.email必须设置为注册账号时使用的Email地址。

以上感谢各位csdn的dalao,以及鸿洋dalao



 配置git
过程多有报错,请大家耐心解决!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: