Git入门及上传项目到GitHub(上)

2016-11-14  本文已影响82人  暗物质

今天上传一个小demo到GitHub中,做简要记录和学习:

1、创建版本库

1.1、创建进入目录

  $ mkdir learngit
  $ cd learngit
  $ pwd   //显示当前目录
  $ cd /Users/safiri/Downloads/ZSBannerScrollViewDemo   

1.2、把目录变成Git可以管理的仓库

$ git init  
//Initialized empty Git repository in /Users/safiri/Downloads/ZSBannerScrollViewDemo/.git/
$ ls -ah //  查看默认是隐藏的.git目录

1.3、把文件添加到版本库

  $ vim README.md
  // 1. 一定要在Git仓库的目录下创建要添加的文件,可以手动创建并编辑内容。这里用vim创建并编辑了。
  
  $ git add README.md //把文件添加到仓库
  $ git commit -m "添加一个项目介绍文件README.md" //把文件提交到仓库
  
  $ git add file1.txt
  $ git add file2.text file3.txt
  $ commit -m "add 3 files."

2、远程仓库

由于本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以需要进行设置:

第1步:创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:

  $ ssh-keygen -t rsa -C "youremail@example.com"

你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。

如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsaid_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。

第2步:登陆GitHub,打开“Account settings”,“SSH Keys”页面:
然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容:

add ssh key

点“Add Key”,你就应该看到已经添加的Key。

注意1:建议用命令复制ssh key,用文本软件打开有可能出错!

mac:
    pbcopy < ~/.ssh/id_rsa.pub
windows:
    clip < ~/.ssh/id_rsa.pub
linux:
    sudo apt-get install xclip
    xclip -sel clip < ~/.ssh/id_rsa.pub

注意2


2.1、添加远程库

一般情况下已经在本地创建了一个Git仓库后,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步。

刚才我创建了一个本地的Git仓库ZSBannerScrollViewDemo

第1步,登陆GitHub,然后,在右上角找到“Create a new repo”按钮,创建一个新的仓库。
第2步,在本地的ZSBannerScrollView仓库下命令:
git remote add [shortname] [url]命令,给远程仓库一个别名shortname

  $ git remote add origin git@github.com:safiriGitHub/ZSBannerScrollView.git
  

第3步,把本地库的所有内容推送到远程库上:

  #如果发生远程与本地仓库的冲突,要先将远程仓库的更新下载更新到本地仓库
  $ git pull origin master

  
  $ git push -u origin master
  //由于远程库是空的,我们第一次推送master分支时,加上了-u参数,
  //Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。

  //从现在起,只要本地作了提交,就可以通过命令:
  $ git push origin master

# 如果因为两个仓库不同,发现refusing to merge unrelated histories,无法pull

因为他们是两个不同的项目,要把两个不同的项目合并,git需要添加一句代码:git pull,这句代码是在git 2.9.2版本发生的,最新的版本需要添加--allow-unrelated-histories

假如我们的源是origin,分支是master,那么我们 需要这样写git pull origin master --allow-unrelated-histories  

2.2、从远程库克隆。

第1步,登陆GitHub,创建一个新的仓库,名字叫ZSBannerScrollView。

第2步是用命令git clone克隆一个本地库:

 $ git clone git@github.com:safiriGitHub/ZSBannerScrollView.git

第3步,在克隆的本地库文件夹下添加要上传的项目、文件等等。
第4步,cd进入ZSBannerScrollView文件夹下

  $ git add .  //把所有的新文件添加。
  $ git commit -m "添加文件"
  $ git push origin master //推送到远程库。

有跟新或者改动的话重复第三第四步不断更新。

另外,要随时掌握工作区的状态,使用git status命令。如果git status告诉你有文件被修改过,用git diff可以查看修改内容。

更新ing

上一篇 下一篇

猜你喜欢

热点阅读