|
以下介绍GITHUB的一些基本操作和命令;没有什么理论,以实践为主
准备工作
①:在www.github.com网站注册自己的帐号
②:在本地的机子上安排GIT HUB的客户端
GITHUB使用的情景一:
在github网站上创建一个git仓库,Copy到本地
①:登录到GITHUB
②:在[Repositories]页签中,找到New按钮,创建一个GIT仓库,假定名称为"HelloGIT"
输入描述信息,点击"Create repository"完成在WebSite中创建Git仓库
创建HelloGit完成后,可以看到它实际上是执行了以下命令:
touch README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin https://github.com/zyguo1006/HelloGit.git
git push -u origin master
以上,是创建GIT仓库的代码,我们在Git Shell中也可以直接用这些命令,创建一个Repository并Push到GitHub Website.以下是这些命令的说明:
1:创建一个readme的文件,
2:初始化github repository,
3:使readme.md文件处于Stage状态, (如果修改了文件,也需要使用git add "xxx.txt"提交这些变更)
4:提交上面的修改,并添加信息.
5:创建一个origin在git上,
6:创建主分支.
操作场景二: 把这个新创建的仓库Clone到本地,并在本地创建一个文件,提交到Git Hub
打开Git Shell窗口,找到要放置Git仓库的文件夹,我假设放在E盘:先进入到E盘.
git clone https://github.com/zyguo1006/HelloGit.git 把GitHub中的仓库Copy到了E盘. 然后,在HelloGit文件夹下创建一个readme.txt文件,并写入一些内容.现在要把readme.txt文件提交到GitHub服务器的HelloGit仓库中.则执行以下操作即可:
cd E: ./HelloGit
git add "readme.txt"
git commit -m "add readme file by git shell"
git push
操作场景三: 对同一文件进行修改,冲突的解决
①:先在WebSite中修改readme.txt文件夹的内容,并提交.
②:然后在本地修改readme.txt的内容,
执行以下操作:
git add "readme.txt"
git commit -m "update readme file at local then submit"
git push
以上,是把修改的readme.txt的内容提交到GitHUB master.但是由于原来这个文件已经有修改,故冲突,产生了以下问题:
! [rejected] master -> master (fetch first)
error: failed to push some refs to 'https://github.com/zyguo1006/HelloGit.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first merge the remote changes (e.g.,
hint: 'git pull') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
如何解决冲突呢?
第一种方法是强制覆盖:
git push -f 这样,就会把原来的修改给覆盖掉,只剩下Client提交的修改
第二种方法是先取得已经提交的修改,比较冲突,修改完成后,再提交:
git pull 这样,readme.txt文件出现以下情况:
HelloGIT at client
> 239b3c2cedd978fdd9f567ce6920fc17e7110daa
其中 >是服务器上现在的,
把这些符号去掉后,就执行
git add "readme.txt"
git commit -m "meger readme"
git push
就可以提交成功.
第三种是在第二种的基础上用代码比较工具,完成比较和合并和再提交.
|
|
|