利用Git Shell来进行与Github的远程交互

           主要介绍利用git shell 来进行与github的远程链接。


1. 利用git shell 从github clone repository


(1).设置用户信息:


打开git shell之后输入以下两行指令:


git  config  --global  user.name  "TeslaHua" //给自己起个用户名
git  config  --global  user.email  "[email protected]" //填写自己的邮箱



(2).获取**:

可参考  点击打开链接  获取更详细步骤,GitHub选择的默认通信方式是SSH(对SSH感兴趣的可以参考阮老师的文章SSH原理与运用(一):远程登录 SSH原理与运用(二):远程操作与端口转发),如果没有配置SSH key就只能clone代码不能push上去(只读),所以要先在Git里面生成SHH Key。如果在当前用户的第一级文件夹下有.ssh文件夹,说明以前可能使用过git,把该文件夹删除(或者先备份再删除,防止意外),如果通过上一步已经生成了.ssh文件夹,那么就可以来获取**了。


继续在shell 里面输入:


ssh-******  -t  rsa  -C  "[email protected]"  //填写email地址


会出现下面的提示:此时按Enter键即可。


利用Git Shell来进行与Github的远程交互


然后会提示你输出一个密语,以及确认一遍密语,最好还是按要求来,之后出现下面的提示说明创建**完成,此时在.ssh文件夹里面应该两个文件:id_rsa和id_rsa.pub。


利用Git Shell来进行与Github的远程交互


然后用记事本打开id_rsa.pub文件,并复制其内容。


(3).现在开始进行与github的远程链接


找到github的自己的账户信息那里,并找到 SSH and GPG keys 选项并点击:

利用Git Shell来进行与Github的远程交互



选择New SSH key,输入一个title,然后把从id_rsa.pub复制的内容粘贴到title下面的key的输入框中点击Add SSH key.


利用Git Shell来进行与Github的远程交互


验证一下是否链接成功,在shell 里面继续输入:


 ssh -T [email protected]


若输出以下信息表示链接正常:


利用Git Shell来进行与Github的远程交互


(4).现在利用shell 来远程 clone repository from github.


如何在github上创建一个repository就不再赘述,我们假设已经创建好了一个名为test的repository.现在需要把它克隆到本地。


点击“Clone or download”,复制:https://github.com/TeslaHua/test.git,后面有用;


利用Git Shell来进行与Github的远程交互

然后利用shell 进入想要clone的目录下,然后在shell 输入:

 

git clone https://github.com/TeslaHua/test.git    //后面的地址就是刚才复制的test的地址


如果出现以下信息说明Clone完成,在自己的Clone目录下就可以看到clone的test仓库了。


利用Git Shell来进行与Github的远程交互


参考资料:点击打开链接


2.通过git shell 向github 上传文件(首先要利用shell 进入上传文件所在文件夹)


(1).  git add    为github上的目标仓库添加文件

       git  add  测试文档.txt     //即你需要上传的文件,如果文件夹中的所有文件都要上传就是: git add .(后面的点不可省)

(2).  git commit -m    为添加的文件做注释

       git commit -m "Just a text."     //双引号的内容是对上传文件的注释

(3).  git push -u origin master    执行推送命令,完成GitHub版本库的初始化。注意命令行中的-u参数,在推送成功后自动建立本地分支与远程版本库分支的追踪。 


利用Git Shell来进行与Github的远程交互


利用Git Shell来进行与Github的远程交互

3. 利用git shell在本地创建repository,并把此repository 上传到 github.


(1). 使用Git shell 在本地建立一个Git版本库。

 

 mkdir  HelloGitHub    //创建此文件夹
 cd  HelloGitHub        //进入此文件夹
 git  init                       //初始化版本仓库


(2). 然后在版本库中添加README.md文件


 git add README.md

 git commit -m "README for this project."


(3). 为版本库添加名为origin的远程版本库


 git  remote  add  origin  https://github.com/TeslaHua/HelloGitHub.git 


(4). 执行推送命令,完成GitHub版本库的初始化。注意命令行中的-u参数,在推送成功后自动建立本地分支与远程版本库分支的追踪。


 git push -u origin master     //推送repository

但是这里出现了问题:


利用Git Shell来进行与Github的远程交互


提示:


remote: Repository not found.
fatal: repository 'https://github.com/zhchnchn/HelloWorld.git/' not found 



问题还没有发现,百度说是权限问题,明天google一下,还会继续补充。


下面是一些相关资料链接:

                                           点击打开链接

                                           点击打开链接

  

今天google了一下,补充:


利用Git Shell来进行与Github的远程交互


首先得在github 上创建一个空的同名repository,然后在进行push操作就可以了:


利用Git Shell来进行与Github的远程交互


利用Git Shell来进行与Github的远程交互         

另外如果想对github上的一个文件进行修改然后提交,就需要对该原始文件copy,然后进行修改,之后必须shell 进入到该 repository 目录下,进行git add file ; git  commit  -m  "对此修改的注释内容" ;以及git push -u origin master 操作就可以成功提交对文件的commit的了。



更新一波: 若你想把本地的repository上传到github,那么当你在github上new repository时,切记不要创建任何文件,比如说LISENCE、.gitignore、README.等文件,否则会报错。


如果你在new repository时已经创建了上述文件,那么请git push之前先pull以下,即运行:git pull http://xxxxx.git  (这里的地址指的你新建在github上的此repository地址),然后运行git  remote add origin https://xxxxx.git,再push:

git push -u origin master 就可以了。