GitHub 之初学(一)

其实 github 的帐号早就开通了,但是一直都没怎么上传代码,这次为了找工作,为了向他们展示一下我平时所写的代码,我打算把原本存放在桌面的所有的小项目都上传到github上。。。。。。

接下来我要记录一下上传代码到github的流程。(顺便提一下,我现在发现终端里使用命令行去执行操作是非常方便的事情。我爱上了命令行了啦,嘻嘻嘻。。。)

 

第一步:要安装git和配置。

          如果是使用Mac做开发,有两种安装Git的方法。          

          方法一是安装homebrew,然后通过homebrew安装Git,具体方法请参考homebrew的文档:http://brew.sh/

          方法二就是安装Xcode,Xcode集成了Git,不过它还没有帮你安装,你需要运行Xcode,选择菜单“Xcode”->“Preferences”,在弹出窗口中找到“Downloads”,选择“Command Line Tools”,点击“Install”就可以完成安装了。

install-git-by-xcode

Xcode可以从AppStore上直接下载安装。。

 

第二步:进入到本地项目根目录下,执行git命令。

           cd desktop/Learning/小玩意儿   

   

第三步:将项目的所有文件添加到仓库中

             git add .   

           如果想添加某个特定到文件,只需要把.换成该特定的文件

 

第四步:将add的文件commit到仓库

            git commit -m "注释语句"

 

第五步:去github上创建自己的repository。具体做法是:

          点击New repository 后取个新名字后,再点击create repository,就会进入一个新的页面,这样就可以拿到创建的新仓库的https 地址(就是新页面的URL)。例如:https://github.com/MelissaHu/Menue

 

第六步:将本地的仓库关联到github上

            git remote add origin https://github.com/MelissaHu/Menue

 

第七步:上传github之前先pull一下,执行如下命令:

             git pull origin master

            此目的是看代码是否更新(特别是团队一起工作,或者独立开发使用不同机器的时候),你需要把最新的代码pull到本地库里。

 

第八步:上传代码到 github的远程仓库,执行如下命令:

            git push -u origin master

            执行完后,中间可能需要你输入Username和Password,你只需要输入 Github的帐号和密码就Ok了,如果上传成功,你就可以在网页上看到。

 

最后记录一下 执行过程中学到了知识点:

1.在上传代码的过程中其实涉及到两个repository,一个是remote repository(在远程服务器上),另一个是local repository(在自己的工作区上)。

2.git clone 是会根据你指定的remote server/repository/branch,拷贝一个副本到你本地,在git push之前,你对所有文件的改动都是在你自己本地的local repository来做的,你的改动(local branch)  和remote branch 是独立的,并行的。

3.在clone完成之后,git会自动为你将此远程仓库命名为origin,并下载其中所有的数据,建立一个指向它的master分支的指针,我们用远程仓库名这样的形式来表示远程分支,所以origin/master指向的是一个remote  branch,但是你无法在本地更改其数据。

4.git push origin master中origin指定了你要push到哪个remote。

           master其实是一个“refspec”,正常的“refspec”的形式为”+<src>:<dst>”,冒号前表示local branch的名字,冒号后表示remote repository下 branch的名字。注意,如果你省略了<dst>,git就认为你想push到remote repository下和local branch相同名字的branch

如: 

$git push origin master:master (在local repository中找到名字为master的branch,使用它去更新remote repository下名字为master的branch,如果remote repository下不存在名字是master的branch,那么新建一个)

$git push origin master (省略了<dst>,等价于“git push origin master:master”)

$git push origin master:refs/for/mybranch (在local repository中找到名字为master的branch,用他去更新remote repository下面名字为mybranch的branch)

$git push origin HEAD:refs/for/mybranch (HEAD指向当前工作的branch,master不一定指向当前工作的branch,所以我觉得用HEAD还比master好些)

$git push origin :mybranch (再origin repository里面查找mybranch,删除它。用一个空的去更新它,就相当于删除了)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值