一、实验目的
- 掌握git 使用
- 掌握使用Github 作为远程仓库
二、实验任务
- 练习本地git 操作
- 用SSH同步本地与Github 仓库
三、实验步骤与结果
创建版本库
创建一个空目录:
$ mkdir learngit
$ cd learngit
$ pwd
/Users/michael/learngit通过git init命令把这个目录变成Git可以管理的仓库:
$ git init
Initialized empty Git repository in /Users/michael/learngit/.git/
远程仓库
在.ssh目录下打开Git Bash,创建SSH Key:
$ ssh-keygen -t rsa -C “1119835543@qq.com”
然后一路回车,使用默认值即可。
在.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。登录Github,打开”settings”,”SSH and GPG keys”页面。然后,点击“Add SSH Key”,填上任意Title,在Key文本框中粘贴id_rsa.pub文件的内容。点“Add Key”,你就应该看到已经添加的Key:
添加远程库:
首先,登陆GitHub,然后,在右上角找到“Create a new repo”按钮,创建一个新的仓库。在Repository name填入learngit,其他保持默认设置,点击“Create repository”按钮,就成功地创建了一个新的Git仓库。
现在,我们根据GitHub的提示,在本地的learngit仓库下运行命令:
$ git remote add origin git@github.com:chenxuean/learngit.git下一步,就可以把本地库的所有内容推送到远程库上:
$ git push -u origin master
推送成功后,可以立刻在GitHub页面中看到远程库的内容已经和本地一模一样:
从现在起,只要本地作了提交,就可以通过命令:
$ git push origin master从远程库克隆
首先,登陆GitHub,创建一个新的仓库,名字叫gitskills:我们勾选Initialize this repository with a README,这样GitHub会自动为我们创建一个README.md文件。创建完毕后,可以看到README.md文件:
现在,远程库已经准备好了,下一步是用命令git clone克隆一个本地库:$ git clone git@github.com:chenxuean/gitskills.git
$ cd gitskills
$ ls
分支管理
首先,我们创建dev分支,然后切换到dev分支:
$ git checkout -b dev
Switched to a new branch ‘dev’然后,用git branch命令查看当前分支:
$ git branch再然后,我们就可以在dev分支上正常提交,比如对readme.txt做个修改,加上一行:Creating a new branch is quick. 然后提交:
$ git add readme.txt
$ git commit -m “branch test”现在,dev分支的工作完成,我们就可以切换回master分支:
$ git checkout master
Switched to branch ‘master’切换回master分支后,再查看一个readme.txt文件,刚才添加的内容不见了!因为那个提交是在dev分支上,而master分支此刻的提交点并没有变。
现在,我们把dev分支的工作成果合并到master分支上:
$ git merge dev合并完成后,就可以放心地删除dev分支了:
$ git branch -d dev
Deleted branch dev (was fec145a)删除后,查看branch,就只剩下master分支了:
$ git branch
实验结果:
本地操作log截图
Github上commits截图
四、实验小结
通过此次实验让我掌握git 的使用和使用Github 作为远程仓库,虽然过程很繁琐,但结果还是好的。