1、注册github账号。
2、创建个人的github仓库,如图,
还可以直接点击右上角的“”+“”添加,
3、创建自己的Repository,如图:
4、新建完成后会进入类似于下面的页面,复制创建仓库的地址,如图:
5、打开本地git命令窗口或者cmd命令窗口,cd到你存放项目的根目录下,并执行一下命令行:
git clone 仓库地址(上面一步复制出来的地址),如下图,是我复制我创建的仓库地址:
6、打开项目文件夹,会发现刚才在github里面新建的文件都存在本地了,如图:
将要上传的文件拷贝到这个目录下,拷贝完成后,再执行下命令git status,看git是否获取到文件的更改,如图:
7、再执行命令git add --all,将所有文件都添加到仓库中,如果想添加某一个文件,则将后面的--all换成你要提交的文件名即可。
8、然后还需要将增加的文件commit到仓库里去,执行命令git commmit -m "注释语句",如图:
9、此时还没完,还要将commit的代码push到远程分支,由于我们本地只有master分支,所以我们可以直接执行命令git push,如图:
会让你输入用户名和密码,你输入你github登录的用户名和密码即可。
此时,刷新网页上新建仓库的地址,你就会看到新增的文件都已经成功上传到git上去了:
配置Git
1、首先需要在本地创建ssh key(可以理解创建密钥文件)
$** ssh-keygen -t rsa -C "[your_email@youremail.com](http://blog.sina.com.cn/s/blog_63eb3eec0101cf6x.htmlmailto:your_email@youremail.com)"** //双引号里面是自己的邮箱,需要是自己在github上面注册的邮箱,这一操作后要求确认路径和输入密码,密码建议与github密码一致,这样比较好记!一路回车键,成功的话,根据命令显示的地址找出.ssh文件夹,进去,找到id_rsa.pub,复制里面的key,登录github,进入**Setting -> SSH keys**,点击Add SSH Key,将复制的key粘贴进去,title随便填!
2、为了验证是否成功,在git bash输入 $ **ssh -T [git@github.com](http://blog.sina.com.cn/s/blog_63eb3eec0101cf6x.htmlmailto:git@github.com) **,如果是第一次的话,会提示是否continue,输入yes,会看到**You’ve successfully authenticated, but GitHub does not provide shell access**,那么证明成功连接github!
3、接下来还需要配置一下username和email,之后每次commit都会使用到的:
$ **git config --global user.name "your name"** //需要和github上名称一致
$ **git config --global user.email "[your_email@youremail.com](http://blog.sina.com.cn/s/blog_63eb3eec0101cf6x.htmlmailto:your_email@youremail.com)"** //需要和github上注册邮箱一致
Git常用命令行
git clone ... //克隆别人的项目
创建一个项目名为angular文件夹
进入这个angular项目
$ git init //初始化
$ git add README.md //更新README文件
$ git add * //更新所有文件
$ git commit -m 'first commit' //提交更新,并注释信息“one commit”,第一次提交
$ git remote add origin [git@github.com:xiaobin5201314/angular.git](http://blog.csdn.net/steven6977/article/details/11268675mailto:git@github.com:defnngj/hello-world.git) //第一次需要连接远程github项目 $ git push -u origin master //将本地项目更新到github项目上去,或是(git push origin master)
$ git pull -u origin master //将github项目更新到本地,或是(git pull origin master)
$ git checkout -b feature_x //创建一个叫做“feature_x”的分支,并切换过去
$ git checkout master //切换回主分支
$ git branch -d feature_x //把新建的分支删掉
$ git push origin <branch> //将分支推送到远端仓库**
$ git merge <branch> //将某个分支合并到master
常见错误
问题1:
fatal: destination path '.' already exists and is not an empty directory.
解决方法如下:
1. 进入非空目录,假设是 /workdir/proj1
2. git clone --no-checkout https://git.oschina.net/NextApp/platform.git tmp
3. mv tmp/.git . #将 tmp 目录下的 .git 目录移到当前目录
4. rmdir tmp
5. git reset --hard HEAD
问题2:
如果输入$ git remote add origin [git@github.com:xiaobin5201314(github帐号名)/gitdemo(项目名).git](http://blog.csdn.net/steven6977/article/details/11268675mailto:git@github.com:djqiang/gitdemo.git)
提示出错信息:fatal: remote origin already exists.
解决方法如下:
1、先输入$ git remote rm origin
2、再输入$ git remote add origin [git@github.com:xiaobin5201314/gitdemo.git](http://blog.csdn.net/steven6977/article/details/11268675mailto:git@github.com:djqiang/gitdemo.git) 就不会报错了!
3、如果输入$ git remote rm origin 还是报错的话,error: Could not remove config section 'remote.origin'. 我们需要修改gitconfig文件的内容
4、找到你的github的安装路径,我的是C:\Users\ASUS\AppData\Local\GitHub\angular_d14f7551eeb4aea0e4ae9fcd3358bd96420bb5c8\etc
5、找到一个名为gitconfig的文件,打开它把里面的[remote "origin"]那一行 删掉就好了!
问题3:
如果输入$ ssh -T [git@github.com](http://blog.csdn.net/steven6977/article/details/11268675mailto:git@github.com) 出现错误提示:Permission denied (publickey).因为新生成的key不能加入ssh就会导致连接不上github,可以重新生成一个。
解决方法如下:
1、先输入$ ssh-agent,再输入$ ssh-add ~/.ssh/id_key,这样就可以了。
2、如果还是不行的话,输入ssh-add ~/.ssh/id_key 命令后出现报错Could not open a connection to your authentication agent.解决方法是key用Git Gui的ssh工具生成,这样生成的时候key就直接保存在ssh中了,不需要再ssh-add命令加入了,其它的user,token等配置都用命令行来做。
3、最好检查一下在你复制id_rsa.pub文件的内容时有没有产生多余的空格或空行,有些编辑器会帮你添加这些的。
问题4:
如果输入$ git push origin master
提示出错信息:error:failed to push som refs to .......
解决方法如下:
1、先输入$ git pull origin master //先把远程服务器github上面的文件拉下来
2、再输入$ git push origin master
3、如果出现报错 fatal: Couldn't find remote ref master或者fatal: 'origin' does not appear to be a git repository以及fatal: Could not read from remote repository.
4、则需要重新输入$ git remote add origin[git@github.com:xiaobin5201314/gitdemo.git](http://blog.csdn.net/steven6977/article/details/11268675mailto:git@github.com:djqiang/gitdemo.git)
网友评论