前言
已经记不清什么时候开始就想学习使用Git了,因为在技术上我是一个比较懒的人,需要工作任务驱使才能花上一段时间去学习、研究一门技术,否者对一些热门的技术只会大概了解,不求甚解。这种惰性的心态对一个码农来说应该是合适的,完成眼前的任务,有新东西需要掌握时,上面一声号令,也能马上上手。但如果对于一个对技术有追求或者职业发展上有追求的人来说(我应该只能算后者),这将是一个致命的缺陷。所以我今天开了【简书】账号,开始装模作样地写一些学习笔记、技术文章,准备改掉这一个懒惰的缺陷,做一个爱读书、求进步、努力向上的有为青年。希望间隙性努力综合症能远离我一点,不要半途而废才好——自勉。
当我打开我的GitHub账号时,我惊奇得发现里面竟然有一个repositories 建于2012年,原来5年前我就开始有心要学Git了。现在这么大一把年纪了还在入门,简直是汗颜!以前欠的债,现在还还得上,如果现在还欠债,将来一定会遭报应的,哈哈~~
学习教程
先贴上一份不错的入门教程:Git教程-廖雪峰的官方网站,这是同事推荐的,这份教程风格和《大话设计模式》有点像语言生动有趣,浅显易懂。如果有足够的时间,每篇文章后面网友的评论也可以看看,对思维是一个不错的补充。另外 猴子都能懂的Git入门 也可以看看。
动手操作
以上推荐的教程是以知识点来组织的,现在我按操作步骤记录一次实际操作过程。
任务:
将本地一个普通文件目录设置为本地仓库(repositories),并与远程库关联。
操作环境:
Windows 7 + Git Bash 。环境的基础搭建可参考上面推荐的学习教程。
第一步:
操作:cd进入你需要创建本地仓库的文件目录
输入命令:cd E:\Git
操作截图:
第二步:
操作:创建本地版本库(repositories)
输入命令:git init
操作截图:
第三步:
操作:提交本地文件
输入命令:
git add . 注意:add 后面有一个点.
git commit -m "add files"
操作截图:
第四步:
操作:登录github账号,新建远程repositories
1、输入GitHub网址 https://github.com/ ;
2、注册新账号或直接登录;
3、New repository
操作截图:
第五步:
操作:把当前本地仓库与远程库之关联
输入命令:git remote add origin git@github.com:alanchenyan/GitLearn.git
操作截图:
第六步:
操作:把本地库的所有内容推送到远程库上
输入命令:git push -u origin master
我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令:git push
操作截图:
错误提示:
ERROR: Permission to alanchenyan/GitLearn.git denied to deploy key
fatal: Could not read from remote repository.
错误解决方案:通过命令生成SSH key,然后将key添加到GitHub的Deploy keys
参考文章:在GitHub多个帐号上添加SSH公钥
输入命令:ssh-keygen -t rsa -C 'git-learn' 然后 一路回车
根据命令窗口中的提示进入本地目录,拷贝key到GitHub
第七步:
操作:重新 git push -u origin master
依然失败,提示需要 fetch first
此时输入命令:git pull 然后继续 git push -u origin master
依然失败,提示 non-fast-forward ,根据提示继续操作,直到push成功
第八步:
成功!