Git本地项目上传,版本管理工具与GitHub的简单结合使用

Git(分布式版本控制系统)

Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。

Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。a

Git能够帮助我们解决文件的提交、检出、回溯历史、冲突解决、多人协作模式等问题。

今天我们来介绍一下Git版本管理工具Sourcetree

SourceTree 是 Windows 和Mac OS X 下免费的 Git  客户端,支持创建、克隆、提交、push、pull 和合并等操作。

SourceTree既有GitBash的命令行,又有EGit的图形化管理,用户界面很人性化,大大简化了开发者与代码库之间的Git操作方式,这对于那些不熟悉Git命令的开发者来说非常实用。

附上Sourcetree的下载地址:

http://pan.baidu.com/s/1kUT5c4v    提取码:qiwu


GitHub

Git是一个分布式的版本控制系统和开源库。

附网上参考博客: http://www.jianshu.com/p/b9077110e39c

注册以及github界面不再详细介绍。


言归正传我们开始正文:

一、创建远程仓库


1. 首先进入个人中心,点击头像选择Your profile


2. 接下来我们选中仓库, New一个新的仓库

创建仓库


3. 具体创建仓库的操作如下图

详细说明
创建成功


二、配置SSH Key

当我们使用GitHub时,每次进行push操作都需要我们登录用户名和密码,这样会大大的降低效率,对于我们可以在上传的时候采用另外一种解决办法—SSH key, SSH key 可以帮我们记住用户名,而且还会对我们的密码进行特殊的保护。

为什么GitHub需要SSH Key呢?因为GitHub需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而Git支持SSH协议,所以,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送。


1. 检查并删除ssh key

配置之前,我们先检查一下电脑中是否存在.ssh文件, 如果有就删掉我们从新配置, 具体步骤如下:

点击Finder,前往文件夹, jens是我的主机名称,操作的时候写成自己的

 说明: 这个.ssh文件属于隐藏文件,我们可以通过 终端 显示隐藏文件

显示Mac隐藏文件的命令:defaultswritecom.apple.finderAppleShowAllFilesYES            隐藏Mac隐藏文件的命令:defaultswritecom.apple.finderAppleShowAllFilesNO

做完如上步骤, 我们检查一下要上传的项目中是否存在.git的文件,如果存在也给删除掉(这里我用一个空白的demo做测试)


2. 使用终端创建新的.ssh文件

为了防止出错,以下命令建议赋值粘贴

mkdir .ssh 


3. 切换当前目录到.ssh文件夹下

cd .ssh


4. 创建公钥和私钥

ssh-keygen -t rsa -C"输入你的邮箱"

接下来会让我们输入密码之类的,直接回车,不做任何操作, 如下图

创建公钥和私钥 


5. 查看是否存在 id_rsa(私钥) id_rsa.pub(公钥),存在就成功了。

ls -la


6. 拷贝公钥

pbcopy < ~/.ssh/id_rsa.pub


7. 在GitHub上配置公钥

由于我们刚刚执行copy命令,上面直接cmd+v就可以了,然后add ssh key

添加公钥

8. 执行如下命令

ssh -T git@github.com

激活公钥



三、上传本地项目到GitHub


1. 建立Git仓库

如果你要上传的项目目录下存在 .git文件,建议删除; 使用终端切换到你要上传的目录下面, 执行

git init

2. 将项目中所有文件添加到仓库中

注意add 后有个 .  建议赋值粘贴

git add .


3. 将我们添加的文件commit到git仓库, 添加注释

git commit -m "注释语句"


4. 接下来我们将本地的仓库与github上的仓库进行关联

git remote add origin    github上仓库的地址

复制仓库地址


5. 上传之前我们先从git上拉取一下

git pull origin master

这个过程,可能会让你输入github的账户名和密码(注意:密码输入不显示),输入完成之后会出现如下的截图

这是vi编译器的窗口,不需要我们做操作,直接退出就可以,

点击键盘i进入编辑模式  -> 点击Esc  -> 输入 :wq  - > 回车


6. push本地项目到远程仓库

git push -u origin master

此时我们看到又要我们输入git账号和密码,输入即可!等待完成我们就可以在github上看到我们的项目。

上传本地项目,到这里就结束了,下面我们介绍一下,git版本管理工具的简单使用。



四、Sourcetree与GitHub的简单结合使用



1. 认识sourcetree界面

界面一

安装的时候,会提示让你登录,直接登录你的github账号就可以了。

选中某一个项目进入界面二(工作副本)

界面三(master)

2. 熟悉一下几个操作

 commit     —     提交修改的内容到本地的仓库

   pull         —     从远程仓库进行拉取修改的代码块  

   push       —     把本地修改的内容推送到远程仓库



3. 从远程仓库clone(克隆)项目到本地

这里我们介绍两种克隆方法 :

第一种:https url,对于使用git的初学者来说比较简单,我们只需要赋值https 的url链接,使用git版本管理工具 或者 命令行指令 克隆到本地就可以。

第二种:SSH url,如果想要使用SSH url进行克隆,我们克隆前需要配置SSH key

a. 复制克隆的链接地址, 这里我们使用ssh url 克隆。

复制克隆url

b. 打开sourcetree,从URL创建一个克隆的项目

创建新仓库

c. 输入步骤a中复制的地址

克隆仓库

d. 克隆成功后双击打开如下界面

我们在克隆的过程中,可能会让我们输入账号和密码,记得输入git的账号密码即可!



4、修改项目push到远程服务器

a. 下面我们打开从github上克隆到本地的项目, 做少许的修改。

打印log

b. 然后我们发现sourcetree界面发生了改变,它会统计到我们所做的一些修改信息

push界面介绍

c. 接下来,我们提交修改的内容到github

push到github界面截图

步骤3如果都选上,相当于我们把修改内容即commit到本地仓库,又push到远程仓库,

如果我们不勾选点提交,还需要我们点击菜单栏上的 “推送” 向远程仓库push推送修改内容,

如果不报错,就代表push成功。

d. 检查github上的仓库是否发生变化

检查github上的变化




5. 从远程拉取修改内容

保存修改内容的时候, 默认勾选  “Commit directly to the master branch.”,把修改内容添加到主分支。

修改后的截图

接下来我们就可以使用sourcetree进行拉取pull, 拉取时弹出的提示框,默认选择直接确定就好

拉取界面的截图

检查一下,我们会看到本地仓库与远程仓库进行同步

检查拉取后的结果



       东西比较多,做的时候一定要认真细心,如果有什么问题和意见可以与我联系,欢迎拍砖, 写给正在学习github以及git工具的你们  /:) 








最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,271评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,275评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,151评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,550评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,553评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,559评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,924评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,580评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,826评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,578评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,661评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,363评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,940评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,926评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,156评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,872评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,391评论 2 342

推荐阅读更多精彩内容

  • Git(分布式版本控制系统) Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。 ...
    默默的前行阅读 364评论 0 0
  • Git(分布式版本控制系统) Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。 ...
    _锋阅读 3,172评论 0 3
  • (1) 先看看商业三要素:商品,场景,人。 以前商品匮乏,如今商品的数量,品质,...
    李昌红阅读 366评论 0 1
  • 午后的云 一寸一寸,还会压的更低吗 电线上的鸟儿,杳无音信 风无情的把枝桠折断,露出白花花的骨 狗冷得颤抖起来,在...
    齐遇1209阅读 184评论 0 2