前言
自去年十一月接触Git并注册了GitHub后,就一发不可收拾抛弃了SVN拥抱了Git。公司代码使用公司内部搭建的GitLab进行代码库管理,个人代码一直使用Git和GitHub 进行代码提交和版本控制,最近又研究了一下GitHub Pages搭建自己的个人博客。用了那么久一直没有整理过(其实是懒),正好今儿一同学也问我Git用着怎么样,于是就干脆整理一下自己的使用心得。刚开始试着写文章,还有Git使用刚算入门吧,不正之处还望各位大大多多包涵和指正。
Git简介
Git是目前世界上最先进的分布式版本控制系统(没有之一)。
Git既然是分布式版本控制系统,那么它就没有中央服务器的,每个人的电脑就是一个完整的版本库,工作的时候就不需要联网了,因为版本都是在自己的电脑上。那多人协作的时候,比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推(push)给对方,对方拉(pull)下来,就可以互相看到对方的修改了。
windows上安装Git
从网上下载一个,然后进行默认安装即可。下载地址
安装完成后,在开始菜单里面找到 "Git --> Git Bash",如下:
弹出一个命令窗口,就说明Git安装成功。如下:
到此Git本地安装完成。
GitHub远程仓库
本地Git仓库和github仓库之间的传输是通过SSH加密,所以需要设置一些东西。
1.用命令进行Git global setup。如下:
2.创建SSH Key。在用户主目录下(我的是在C:\Users\Administrator.ssh下),看看有没有.ssh目录,如果有,在这个目录下有没有id_rsa和id_rsa.pub这两个文件
有的话,直接跳过此命令,没有的话打开命令行,输入如下命令:
ssh-keygen -t rsa -C "youremail@example.com"
3.登录GitHub,打开settings中的SSH Keys页面,点击“Add SSH Key”,填上任意title,在Key文本框里黏贴id_rsa.pub文件的内容。
关联远程仓库成功,然后就可以用git命令在本地和远程进行文件操作了。
Git常用命令
mkdir test 创建test目录
cd test 打开test目录
git init 初始化test仓库
touch README
git add README 添加介绍
git clone git@example.com:project-name.git 克隆项目
git checkout -b $feature_name 创建新分支
git status 查看当前仓库状态
git branch 查看当前仓库所有分支
git commit -am "My feature is ready" 提交当前分支的修改
git push origin $feature_name Push当前分支到GitLab
git remote add origin test 加入仓库
git push -u origin master 推到远程仓库
git branch -d dev1 删除分支
git fetch --prune 小组开发人员同步远程已删除的分支
git fetch origin 从远程获取最新版本到本地,不会自动merge
git pull origin 从远程获取最新版本并merge到本地
git merge origin/featureA 合并分支
这里只介绍一些基础的命令,Git的强大之处还需要大家继续挖掘,习惯图形界面的童鞋还可以安装TortoiseGit,不过还是觉得多使用命令行比较好。
最后推荐一些git学习资源:
Git教程-廖雪峰的官方网站
如何在 Git 里撤销(几乎)任何操作
GitHub上整理的一些工具
github上值得关注的前端项目