首先,我们先来看看Git和GitHub两者的区别

  git和github是两个完全不同的概念。

  git     

       是一个版本管理工具,是可以在你电脑不联网的情况下,只在本地使用的一个版本管理工具,其作用就是可以让你更好的管理你的程序,比如你原来提交过的内容,以后虽然修改了,但是通过git这个工具,可以把你原来提交的内容重现出来,这样对于你后来才意识到的一些错误的更改,可以进行还原。

  关于github,这是一个网站,就是每个程序员自己写的程序,可以在github上建立一个网上的仓库,你每次提交的时候可以把代码提交到网上,这样你的每次提交,别人也都可以看到你的代码,同时别人也可以帮你修改你的代码,这种开源的方式非常方便程序员之间的交流和学习。 

  github

       是一个非常适合程序员交流的网站,很多国际上的技术大牛都在github上有自己的开源代码,其他人只要申请个账号就可以随意的看到这些大牛写的程序。同时国内的很多互联网公司如百度,阿里等,也在github上公布有开源的代码,感兴趣的程序员也可以自己查找着看一些。想看国内大公司的代码,可以看连接:https://www.zhihu.com/question/20194937

  总的来说,git可以认为是一个软件,能够帮你更好的写程序,github则是一个网站,这个网站可以帮助程序员之间互相交流和学习。

 

下面来讲讲如何使用GitHub,登录GitHub官网:https://github.com/ ,在上面注册一个属于自己的GitHub账号

 

 

通过这些简单的步骤之后,你就能拥有一个属于自己的GitHub账号,注册完成之后,你还需要创建一个属于自己的库

第一个框是自己为自己的库起一个名字,第二个框是自己对库的一个简单说明,在创建完成自己的库之后,下面就要让自己的电脑克隆一个自己所创建的库,方面自己电脑上的代码同步到GitHub你所创建的库当中。这时就需要安装一个软件,Git Bash,下面我就介绍一下这个软件的安装,以及简单的配置。首先进入GitHub官网https://git-scm.com ,下载适合自己电脑的版本,安装过程直接点击下一步,直至安装完毕。

安装完成后,出现如下界面:

接下来,就要开始获取属于你自己的密匙。在git bash中所有功能都是通过简单的一些代码来实现的。获取密匙的时候需要输入

$ ssh-keygen-t rsa-C "your_email@youremail.com",引号内需要改成你在注册GitHub的时候绑定的邮箱账号。之后会有一些简单的让你确认的操作,之后让你会提示操作路径、密码等等,一般情况下就直接按回车一路过就可以,出现如下界面后,就说明你的密匙已经成功创建了。现在你就需要去它刚刚显示的存储位置打开它,把其中的内容复制出来。

我的是在电脑C盘中,.ssh文件夹中的id_rsa.pub文件

以记事本的形式打开该文件,将里面的内容复制下来

接下来回到GitHub官网界面,点击头像旁的Setting选项,找到SSH and GPG keys这个选项之后,在网页右上角有一个添加新的SSH keys 点击,这里的title 是让你给你的密匙起一个名字,根据个人喜好,什么名字都可以,然后把你在刚刚文件中复制的密匙,填写在下边的大框里。保存即可。

之后继续回到你的Git bash界面,

输入上面代码,来检查是否成功绑定。第一次绑定的时候输入上边的代码之后会提示是否继续,在输入yes后如果出现了:You\'ve successfully authenticated, but GitHub does not provide shell access 。那就说明已经成功连上了GitHub。

接下来我们就可以通过写命令来上传项目了!!!

GitHub上传项目操作步骤:

1.找到自己电脑存放项目的位置,或者自己新建一个文件夹专门用来存储项目

2.把指令切换到这个目录

3.初始化操作,输入git init,该文件夹下会出现一个隐藏的,git文件

4.输入 " git add . ", 这个是将项目上所有的文件添加到仓库中的意思,如果想添加某个特定的文件,只需把\' . \'换成这个特定的文件名即可

 

5.接着输入 " git commit -m "first commit ",表示你对这次提交的注释,双引号里面的内容可以根据个人的需要改。例如 " git commit -m "第一次提交 " 

6.输入 "git remote add origin https://自己的仓库url地址(上面有说到)"  将本地的仓库关联到github上,我的url地址是:https://github.com/fwb0618/Bean.git

7.最后一步,输入 "git push -u origin master ",这是把代码上传到github仓库的意思

此时,回到GitHub官网,就可以看到UserManager该项目已经成功地上传到了自己的GitHub仓库中

 

 

如何删除上传到GitHub仓库中的项目?

具体操作:

1.在本地仓库中删除文件夹,输入 git rm -r 文件名/,次数-r表示递归所有的子目录,如果你要删除的是空文件夹,可以不用带上-r

2.提交删除操作,输入git commit -m "删除操作",“ ”内的为备注,根据自己的描述进行输入即可

 

3.推送到GitHub远程仓库,输入git push -u origin master

 

4.回到GitHub官网,刷新界面,发现刚才上传的UserManager项目已经删除

 

 

 

GitHub常见操作和常见错误:

如果输入$ git remote add origin git@github.com:djqiang(github帐号名)/gitdemo(项目名).git 

    提示出错信息:fatal: remote origin already exists.

    解决办法如下:

    1、先输入$ git remote rm origin

    2、再输入$ git remote add origin git@github.com:djqiang/gitdemo.git 就不会报错了!

    3、如果输入$ git remote rm origin 还是报错的话,error: Could not remove config section \'remote.origin\'. 我们需要修改gitconfig文件的内容

    4、找到你的github的安装路径,我的是C:\Users\ASUS\AppData\Local\GitHub\PortableGit_ca477551eeb4aea0e4ae9fcd3358bd96720bb5c8\etc

    5、找到一个名为gitconfig的文件,打开它把里面的[remote "origin"]那一行删掉就好了!

 

 

    如果输入$ ssh -T git@github.com
    出现错误提示:Permission denied (publickey).因为新生成的key不能加入ssh就会导致连接不上github。

    解决办法如下:

    1、先输入$ ssh-agent,再输入$ ssh-add ~/.ssh/id_key,这样就可以了。

    2、如果还是不行的话,输入ssh-add ~/.ssh/id_key 命令后出现报错Could not open a connection to your authentication agent.解决方法是key用Git Gui的ssh工具生成,这样生成的时候key就直接保存在ssh中了,不需要再ssh-add命令加入了,其它的user,token等配置都用命令行来做。

    3、最好检查一下在你复制id_rsa.pub文件的内容时有没有产生多余的空格或空行,有些编辑器会帮你添加这些的。

 

 

    如果输入$ git push origin master

    提示出错信息:error:failed to push som refs to .......

    解决办法如下:

    1、先输入$ git pull origin master //先把远程服务器github上面的文件拉下来

    2、再输入$ git push origin master

    3、如果出现报错 fatal: Couldn\'t find remote ref master或者fatal: \'origin\' does not appear to be a git repository以及fatal: Could not read from remote repository.

    4、则需要重新输入$ git remote add origingit@github.com:djqiang/gitdemo.git

 

 

    使用git在本地创建一个项目的过程

    $ makdir ~/hello-world    //创建一个项目hello-world
    $ cd ~/hello-world       //打开这个项目
    $ git init             //初始化 
    $ touch README
    $ git add README        //更新README文件
    $ git commit -m \'first commit\'     //提交更新,并注释信息“first commit”
    $ git remote add origin git@github.com:defnngj/hello-world.git     //连接远程github项目  
    $ git push -u origin master     //将本地项目更新到github项目上去

 

    gitconfig配置文件

         Git有一个工具被称为git config,它允许你获得和设置配置变量;这些变量可以控制Git的外观和操作的各个方面。这些变量可以被存储在三个不同的位置: 
         1./etc/gitconfig 文件:包含了适用于系统所有用户和所有库的值。如果你传递参数选项’--system’ 给 git config,它将明确的读和写这个文件。 
         2.~/.gitconfig 文件 :具体到你的用户。你可以通过传递--global 选项使Git 读或写这个特定的文件。
         3.位于git目录的config文件 (也就是 .git/config) :无论你当前在用的库是什么,特定指向该单一的库。每个级别重写前一个级别的值。因此,在.git/config中的值覆盖了在/etc/gitconfig中的同一个值。
        在Windows系统中,Git在$HOME目录中查找.gitconfig文件(对大多数人来说,位于C:\Documents and Settings\$USER下)。它也会查找/etc/gitconfig,尽管它是相对于Msys 根目录的。这可能是你在Windows中运行安装程序时决定安装Git的任何地方。

 

        配置相关信息:

        2.1 当你安装Git后首先要做的事情是设置你的用户名称和e-mail地址。这是非常重要的,因为每次Git提交都会使用该信息。它被永远的嵌入到了你的提交中:

  $ git config --global user.name "John Doe"

  $ git config --global user.email johndoe@example.com

 

       2.2    你的编辑器(Your Editor)

  现在,你的标识已经设置,你可以配置你的缺省文本编辑器,Git在需要你输入一些消息时会使用该文本编辑器。缺省情况下,Git使用你的系统的缺省编辑器,这通常可能是vi 或者 vim。如果你想使用一个不同的文本编辑器,例如Emacs,你可以做如下操作:

  $ git config --global core.editor emacs

 

      2.3 检查你的设置(Checking Your Settings)

  如果你想检查你的设置,你可以使用 git config --list 命令来列出Git可以在该处找到的所有的设置:

  $ git config --list

      你也可以查看Git认为的一个特定的关键字目前的值,使用如下命令 git config {key}:

  $ git config user.name

 

      2.4 获取帮助(Getting help)

  如果当你在使用Git时需要帮助,有三种方法可以获得任何git命令的手册页(manpage)帮助信息:

  $ git help <verb>

  $ git <verb> --help

  $ man git-<verb>

  例如,你可以运行如下命令获取对config命令的手册页帮助:

  $ git help config

 

 

 

 注:”GitHub常见操作和常见错误”这一部分内容借鉴自他人,非本人原创,谢谢!