git连接github及git简单用法

3,482 阅读4分钟

一 github建立仓库

注册账户

注册账户这里不过多赘述,要注意的是要把记住账号、邮箱和密码记下来

建立仓库

(1)点击仓库新建按钮

这里看到导航栏有Repositories和Projects,如果想新建一个项目选前者

(2)新建页面

新建页面包含三部分:写自己项目名称,设置项目是否公开,是否添加一个readme文件,这个文件用来对项目进行简单介绍

获得仓库地址

得到新的项目之后回到仓库界面,点击Clone按钮会有一个网址,这个网址就是项目地址,记下来

二 本机Git与Github建立连接

本机安装配置Git

apt-get install git // ubbuntu 或者 yum install git //centos
git config --global user.name "username" //github账号名字
git config --global user.email "useremail@email.com" //github注册邮箱
git config --list //这里可以显示信息看是否添加成功

利用SSH KEY与Github进行连接

(1)本机生成SSH KEY

使用 ls -al ~/.ssh 命令查看 ssh key 是否存在,若存在则忽略这一步

ssh-keygen -t rsa -C "username@email.com"

生成 ssh key 过程中,会让你填写 passphrase,连按三次回车跳过即可

(2)查看 SSH KEY

进入 /root/.ssh 目录,复制 id_rsa 和 id_rsa.pub 文件中的文字作为公匙:

cd /root/.ssh
ls -a
vim id_rsa.pub //

(3)将公匙添加到Github 进入Github点击设置

点击SSH,将刚复制的公匙粘贴进去,title随便写
(4)测试连接效果

本地新建一个文件夹demo,在文件加中执行将Github上的项目同步到本地

git init //初始化
git clone git://github.com//grit.git

这里可能会提示错误

解决方法

vim .git/config
修改 url = https://github.com/username/github_test
为: url = https://username@github.com/username/github_test

再次 clone 将网址中的github.com改为username@github.com,弹出框输入整个github账户的密码,即可提交

三 Git的简单使用

(1)Git结构

Git是由四部分构成的:工作区(实际存在的文件)、临时缓存、最后一个提交结果和远端服务器。通过这四个部分就可以很好的实现代码的上传同步和回滚操作,这里只介绍Git简单的增删改查功能

(2)增

touch first.php //在工作文件夹创建一个文件
git add * //将新添加的文件写进缓存区 *可以写新添加的文件名字

(3)删

rm first.php //只删除实际文件,缓存区中不删
git rm --cashed first.php //只删除缓存文件,不删除实际文件
git rm first.php //实际和缓存文件都删除

(3)改

git mv first.php second.php

(4)查

git status //检查文件改动状态
git diff //查看具体的改动

(5)提交

增删改查之后会将实际文件存放在缓存区,如果要想同步到服务器需要存储在本机HEAD中,然后同步

git commit -m 'first_message' //将缓存区的文件提交到HEAD中,这里的first_message是简单的介绍信息
git push origin master //将本地的提交文件推送到服务器

(6)撤销

撤销是在本地提交但是还没有push到远端服务器

  • 文件被修改但是没有保存到缓存区
git checkout fileName
git checkout .
  • 文件被修改且保存到缓存区
git reset HEAD fileName //撤销缓存
git checkout fileName  //撤销修改
  • 文件被修改且被提交到HEAD
git commit --amend -m"message"

(7)回滚

  • 修改了远端服务器的代码,可以通过tag恢复代码
打标签方法:
git branch  // 切换到需要打tag的分支

git tag v1.0 //对最近一次的commit打tag
git tag -a v0.1 -m "version 0.1 released push url" //对最近的一次commit打tag并添加说明

git push origin v0.1 //将指定tag推送到远端服务器
git push origin --tags  //将所有的tag推送到服务器
  • 情况一 想回滚到指定版本

查询tag的具体信息会找到相应的commit号,记下这个号的前六位

git tag  //查看所有tag
git show v0.1  //查看具体的信息

回退到对应的commit的位置

git reset --hard d5a65e  
git push origin master
  • 情况二 想回滚到最近一次版本
git revert HEAD 或者 git reset --hard HEAD^
git push origin master
  • 情况三 指定文件回滚到指定版本
git log <filename>
git checkout <commitID> <filename> 指定文件回滚到指定commit版本
git push origin master

本文参考 [1] www.cnblogs.com/woider/p/65…

[2] www.bootcss.com/p/git-guide…

[3] my.oschina.net/felumanman/…

[4] blog.csdn.net/ligang25851…

[5] blog.csdn.net/QH_JAVA/art…