Git配置及GitHub的基础使用(Win及Ubuntu)

目录

一. 准备工作

(一) 在GitHub上注册一个账号

(二) 新建一个远端仓库(Repository),位置在网站右上角的一个黑色小加号

二. Win环境下配置

在Win环境下,我们有两种方法操作我们的Project,分别是https和SSH,相比较来说,https更加简单,步骤少。
https 和 SSH 的区别:

1、前者可以随意克隆github上的项目,而不管是谁的;而后者则是你必须是你要克隆的项目的拥有者或管理员,且需要先添加 SSH key ,否则无法克隆。

2、https url 在push的时候是需要验证用户名和密码的;而 SSH 在push的时候,是不需要输入用户名的,如果配置SSH key的时候设置了密码,则需要输入密码的,否则直接是不需要输入密码的。

1. 方法一 (使用https,更简单)

(1)设置Git全局用户配置
git config --global user.name "Your Name"
git config --global user.email "XXX@gmail.com"
(2)创建本地新项目路径(可选,取决于你想把Project放在哪里)
  mkdir New-dir //"New-dir"可以随意替换
  cd New-dir
  git init
(3)你的Project下载到本地(如果Project非空的话)
git pull https://github.com/YourName/YourProject.git
(4)测试
touch README //新建README文件
git add README
git commit -m "New Test"
git push https://github.com/YourName/YourProject.git master

输入用户名和密码后你会看到一大段文字,以”master –> master”结尾,然后进入github网站,你的Project将会更新,到这里我们就成功了!

2. 方法二 (使用ssh key,更稳妥)

(1)创建ssh key

运行 git Bash 客户端,输入如下代码:

cd ~/.ssh
ls

如果警告你路径不存在,那么继续下面步骤,否则说明你已经有ssh key了不需要创建。

ssh-keygen -t rsa -C "your_email@example.com"

代码参数含义:

-t 指定密钥类型,默认是 rsa ,可以省略。
-C 设置注释文字,比如邮箱。
-f 指定密钥文件存储文件名。

以上代码省略了 -f 参数,因此,运行上面那条命令后会让你输入一个文件名,用于保存刚才生成的 SSH key 代码,如下:

Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/you/.ssh/id_rsa): [Press enter]

你可以不输入文件名,直接回车就是使用默认文件名(推荐),那么就会生成 “id_rsa” 和 “d_rsa.pub” 两个秘钥文件。
接着又会提示你输入两次密码(该密码是你push文件的时候要输入的密码,而不是github管理者的密码),

当然,你也可以不输入密码,直接按回车。那么push的时候就不需要输入密码,直接提交到github上了,如下:

Enter passphrase (empty for no passphrase): 
Enter same passphrase again:

接下来,就会显示如下代码提示,如:

Your identification has been saved in /c/Users/you/.ssh/id_rsa.
Your public key has been saved in /c/Users/you/.ssh/id_rsa.pub.
The key fingerprint is:
01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db your_email@example.com

当你看到上面这段代码的时候,说明你的 SSH key 已经创建成功

(2)添加shh key到github上

回到github网站,点击右上方你的头像旁边的小黑下拉菜单,找到”setting”这一项,进去以后在左侧边栏找到”SSH keys”选项。接着点击”Add SSH key”,”Title”栏随意填写,”key”栏中将刚刚创建key时生成的”id_rsa.pub”文件中全部内容复制进去即可。

(3)测试ssh key
ssh -T git@github.com

接下来会看到这样的警告:

The authenticity of host 'github.com (207.97.227.239)' can't be established.
# RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
# Are you sure you want to continue connecting (yes/no)?

这是正常的,你输入 yes 回车既可。如果你创建 SSH key 的时候设置了密码,接下来就会提示你输入:

Enter passphrase for key '/c/Users/Administrator/.ssh/id_rsa':

密码正确后你会看到下面这段话:

Hi username! You've successfully authenticated, but GitHub does not
# provide shell access.

如果用户名是正确的,你已经成功设置SSH密钥。如果你看到 “access denied” ,者表示拒绝访问,那么你就需要使用 https 去访问,而不是 SSH 。

三. Ubuntu环境下配置

请移步至《Git设置及GitHub的使用》文档,地址http://www.cnblogs.com/peterzd/archive/2012/04/22/2465230.html

四. 基础使用

在git操作中,为了形象,我们可以简单理解为本地文件有四个状态,分别为”untracked”, “tracked”, “unstaged”, “commited”,只有”commited”状态的文件才可以被上传到你线上的Project。

untracked:本地新建的文件
tracked:已经被跟踪,也记录好修改内容
unstaged:被跟踪的,但是又修改过了,修改内容还没记录
commited:已经被登记到上传列表,待传到线上去

(1)将Project进行clone到本地
git clone https://github.com/YourName/YourProject
(2)进行add操作

凡是进行修改过的,或是新建了的文件,想要记录这些操作,就需要先用add指令:

git add filename

进过add指令的文件属于tracked状态,下一步就是变成commited

(3)进行commit操作
git commit -m "The text you like"

代码中“”中的内容为你该次上传的备注文字,必须得写,在github上能看到你每次上传的这个备注文字。

(4)进行push操作

push意味着将本次修改真正地从本地提交到线上去。(我默认你就使用master分支)

git push https://github.com/YourName/YourProject master

最后像之前测试的时候一样输入用户名和密码,到这里我们就向线上完成了一次简单的提交,到github网站上就可以看到更新了。

五. git操作小技巧

当文件过多需要add时,我们不可能一个文件一个文件地add,这时候可以使用:

git add .

对当前所有需要add的文件进行add操作。

另:git工具官方网站目前需要翻墙下载,我的个人空间里有git工具可供下载。

如果有疑问或指正,欢迎留言。

参考文献:
[1] 《github设置添加SSH》,http://blog.csdn.net/binyao02123202/article/details/20130891
[2] github帮助文档,https://help.github.com/articles/generating-ssh-keys
[3] 《git/github初级运用自如》,http://www.cnblogs.com/fnng/archive/2012/01/07/2315685.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值