基本操作
管理本地的git仓库
- 下载git软件到本地PC
- Windows版本下载
- Mac版本
- Linux:apt-get install git
- 建立一个项目的代码仓库
- 在git命令行下进行创建项目文件夹、创建文件等操作
-
mkdir tmp:创建文件夹
tmp
cd tmp:切换到tmp目录
touch README.md:在tmp目录下新建README.md文件 -
git init:将当前目录初始化为git仓库,此时
tmp文件夹下会出现一个.git的隐藏文件夹
- 对本地git仓库文件进行增、删、改、分
- 执行完以上操作后tmp目录就是一个git仓库了,你可以在其中新建、编辑文件
main.cpp,head.h等文件,但是此时新建、编辑文件main.cpp,head.h等文件还没有加入git库,你需要使用 git add,git commit 这两个命令来将文件加入git仓库 -
git add README.md:将
README.md加入git缓存,此时README.md文件还没有被真正提交 -
git commit -m 'first commit README.md':提交
README.md文件到git仓库,同时加入信息"first commit README.md" - git log:用于查看代码提交记录以及分支记录
- git status:用于查看当前git仓库状态,如是否有代码还未提交
-
git branch :当有两个及以上的人在开发同一个项目,但是做不同的模块,每个人可以基于当前项目新建分支,输入git branch a 就新建了一个名字叫
a的分支,这时候分支a跟分支master是一模一样的。输入git branch可以查看当前分支状况 -
git checkout a:将工作分支从当前分支(
master)切换到a,当然,你也可以用git checkout -b a,这样就是新建一个a分支,并且自动切换到a分支 -
git merge a:当
a分支的开发工作结束后需要将a分支合并到主分支master,首先切换到master分支,然后执行git merge a,就可以合并分支了,如果出现代码冲突,就需要手动来解决了 - git branch -d a: 但分支建立错误或者不需要某个分支了,使用git branch -d a命令就将a分支删除了,强制删除a分支可以使用git branch -D a
- 执行完以上操作后tmp目录就是一个git仓库了,你可以在其中新建、编辑文件
将本地git仓库与GitHub同步
- 注册github账号
- 使用SSH公钥来授权
- 首先在git命令行下输入ssh-keygen -t rsa,按照提示输入路径,默认直接敲回车,就会用RSA算法生成生成两个文件 id_rsa 和 id_rsa.pub , id_rsa 存放私钥 ,id_rsa.pub 存放公钥。可以在默认用户路径下的
.ssh文件(这个文件夹一般是隐藏状态的)中看到这两个文件,用sublime或(其他编辑器)打开id_rsa.pub,将公钥复制 - 然后在github页面-->Settings-->SSH and GPG keys页面下点击右上角
New SSH key,输入公钥保存。SSH key 添加成功之后,输入ssh -T git@github.com进行测试,如果出现以下提示证明添加成功了。
本机与github连接成功示意图
- 首先在git命令行下输入ssh-keygen -t rsa,按照提示输入路径,默认直接敲回车,就会用RSA算法生成生成两个文件 id_rsa 和 id_rsa.pub , id_rsa 存放私钥 ,id_rsa.pub 存放公钥。可以在默认用户路径下的
- 将本地git仓库与github仓库同步
- 在github上建立一个与本地项目同名的项目
- 记住github项目的SSH地址(如:
git@github.com:keloli/GitConnectTest.git)
用命令git remote add origin git@github.com:keloli/GitConnectTest.git
如果报错:fatal: remote origin already exists.那就先执行git remote rm origin再执行git remote add origin git@github.com:keloli/GitConnectTest.git
- 执行命令
git push -u origin master将本地项目的master分支推送到github上,这样就完成了本地项目和github对应项目同步的工作 - 另外,
git pull origin master意思就是把远程最新的master分支代码更新到本地,一般我们在push之前都会先pull,这样不易产生冲突 -
git clone git@github.com:keloli/GitConnectTest.git命令可以将github上的对应项目(这条命令就是GitConnectTest这个项目)全部克隆到本地
- 已经将远程仓库
pull到本地,在本地删除文件并与远程仓库同步的方法:git rm 文件名,git commit -m "注释信息",git push
在本地删除文件并同步到远程仓库的方法
高阶技巧
在打开的页面可以敲
t,然后就可以输入文件名进行筛选了-
添加徽章
- 进入http://shields.io/
- 选择合适的徽章,点击进入编辑页面
-
将对应的徽章地址复制到自己的README.md文档中
徽章的5种styel的显示效果 - 当然,你也可以让徽章链接到指定网站,如
https://github.com/keloli/NoteBook
Wiki
Wiki页面可以用来写更为详细的文档给
git命令起别名,详见: 从0开始学习 GitHub 系列之「Git 进阶」
例如:
git config --global alias.psm 'push origin master'
git config --global alias.plm 'pull origin master'
之后经常用到的 git push origin master 和 git pull origin master 直接就用 git psm 和 git plm 代替了。
- 在评论等之中添加emoji表情:
输入:smile:会显示微笑表情
表情大全参见:https://segmentfault.com/a/1190000009649780
ToDo
- 用 Github Pages 搭建自己的个人网站
参考资料
- http://img.blog.csdn.net/20140717215453576




