Git入门
如果你完全没有接触过Git,你现在只需要理解通过Git的语法(敲入一些命令)就可以将代码上传到远程的仓库或者下载到本地的仓库(服务器),可知我们此时应该有两个仓库,就是两个放代码的地方,一个是本地,一个是远程的(如Github)。企业或者团队可以通过Git来对项目进行管理,每个程序员只需将自己的本地仓库写好的代码上传到远程仓库,另一个程序员就可以下载到本地仓库了。今天我们就从Git终端软件的安装开始,再这之前我也简单介绍一下Github。
Github是什么
Github网站就是一个远程的仓库,我们可以把程序上传到他们的网站,Github是目前一个非常大的代码托管仓库。网站是https://github.com 你可以提前在该网站注册一个账户,等会会用到。
Git终端软件安装
1、下载windows上git终端,类似shell工具,下载地址:http://msysgit.github.io/
2、安装方法,打开文件,一路点击Next即可
3、安装完成,界面如下
在本地创建一个仓库
注:每一条Git语句都是以$开始的(终端一般是自动加了的),#后面代表注释,回车运行命令
1、创建一个身份标识(将oldinaction和oldinaction@qq.com改成你自己的用户名和邮箱)
git config --global user.name oldinaction #用户名
git config --global user.email oldinaction@qq.com #邮箱
2、在window下选一盘符用来建git仓库目录(运行下面两句后就会自动在电脑H盘创建一个mygit的目录作为git的本地仓库)
cd /h
mkdir mygit
3、创建自己的项目文件夹名
mkdir Demo #创建的项目文件名叫Demo
cd Demo #进入到Demo目录
4、初始化git仓库(此步操作完成后,会生成一个隐藏的.git后缀文件)
git init
5、提交内容到仓库,将我们的项目文件拷贝到H:/mygit/Demo目录
git add test.html #只提交当前目录的test.html文件到本地git仓库(虽然文件在这个目录,但是如果不提交的话就不在本地的Git仓库,之后就不能和远程仓库进行数据交互)
git add . #就可以把所有内容添加到索引库中,注意后面有个点
git commit -m "注释内容" #提交索引库中的内容;-m是参数,表示注释内容,主要用来记录此次操作
使用git上传自己的项目到github
1、注册github账户
2、新建项目,点击下面图片中的链接
3、填写项目信息,如下图
4、在git里生成公钥文件,用来连接github。在git命令控制台输入下面命令,连续敲3个回车即可
ssh-keygen -t rsa -C "oldinaction@qq.com" #改成你的邮箱
5、命令生成后,可以在C:Usersqindongliang.ssh文件夹下,找到公钥文件(id_rsa.pub)
6、为了防止链接git失败,可新建一个无后缀的名称为config文件,在里面加入下面代码
Host github.com User git Hostname ssh.github.com PreferredAuthentications publickey IdentityFile ~/.ssh/id_rsa Port 443
7、在github账户设置中设置ssh keys,见下图,其中title自己取名,key的内容就是将id_rsa.pub中的代码全部复制过来
8、在git终端上测试链接github
ssh –t git@github.com
如果提示类似ssh: Could not resolve hostname 342200223t: Name or service not known的错误,解决办法是执行下列命令: ssh -t -p 22 git@github.com #-p表示修改服务器端口为22 当提示输入(yes/no)?时在后面输入yes回车即可
当看到欢迎语Hi oldinaction! You've successfully authenticated, but GitHub does not provide shell access.则表示链接成功。
9、在本地仓库上传代码到远程仓库
(1)进入到本地仓库:
- 在git里面,使用"cd 目录名"进入我们的仓库Demo根目录下
- 或者直接进入到Demo根目录,点击右键,会发现git终端给我们的右键绑定了一个"Git Bash Here",点击即以master进入到本地仓库,并打开git终端
(2)运行以下代码
git remote add origin git@github.com:oldinaction/demo.git #其中git@github.com:oldinaction/demo.git是我们github中demo项目的ssh地址
git push -u origin master
(3)如果出现non-fast-forward的错误,这主要是git仓库中已经有一部分代码,所以它不允许你直接把你的代码覆盖上去。可能有的人在新建项目配置项目信息时,将上图的新建README文件选项打钩了。解决办法: git push --all -f #强推,即利用覆盖方式用你本地的代码替代git仓库内的内容
10、到github项目主页https://github.com/oldinaction/demo就可以看到从本地仓库上传到github远程仓库的代码了