caz28的专栏

写教程是对自己知识的一种总结,总结出来跟大家分享。在当前目录创建一个空的git仓库。git initgit提交修改需要两步,下面是把xxx的修改提交到仓库:git add xxxgit commit -m "注释"下面说说后悔了怎么办。如果你修改了文件,还没有add,可以用下面命令回退到修改前状态:git checkout — <file>…如果你已经add了,还没commit,可以用下面命令回退到add前状态:git reset HEAD <file>…如果你注释写错了,需要修改,可以用下面命令,只能改最近一次提交的注释。git commit -amend -m "注释更改"如果你更悲催,已经commit了,可以用下面命令,回退到commit前一个版本。git reset –hard HEAD^总之在你push到远程仓库之前,想怎么回退就怎么回退,有git就这么任性。现在是信息社会,我们需要各种信息,下面命令查看当前git工作区状态信息git status下面命令显示工作区代码有哪些修改git diff下面命令显示每次提交log,会显示很多git log下面只显示最近一个git log -1下面比上一个多显示diff信息。git log -1 -p下面只显示一行,只显示commit ID和注释。git log –pretty=oneline下面跟上面类似,但commit ID只显示几位,更简洁。git log –pretty=oneline –abbrev-commit下面讲讲跟远程仓库有关的问题。关联一个远程仓库,origin是给远程主机起的名,后面是它的地址。git remote add origin git@xxxxx删除一个主机名git remote rm <主机名>更名一个主机名git remote rename <原主机名> <新主机名>查看有几个主机名git remote跟上面类似,加显示主机地址。git remote -v知道远程主机地址,我们就可以把远程主机的代码拉下来了。git clone git@xxxxx会在当前目录建立一个文件夹,文件夹名字跟项目名字一样,然后把远程仓库克隆到本地。本地仓库的修改需要推送到远程仓库,远程的修改也要拉下来合入本地,就要用到两个命令:git push <远程主机名> <本地分支名>:<远程分支名>推送本地分支,合入远程分支。git push <远程主机名> <本地分支名>推送本地分支,合入远程分支,远程分支跟本地分支同名。git pull <远程主机名> <远程分支名>:<本地分支名>拉取远程分支,合并到本地分支。git pull <远程主机名> <远程分支名>拉取远程分支,合并到本地当前分支。pull是拉取远程分支,,并自动合并到本地分支,如果本地有修改,一般会出现冲突。但pull时,有时候报冲突,有时候自动合并,不报冲突。会产生很多奇怪问题,有时候很难检查出来。推荐的办法是用fetch命令。git fetch <远程主机名> <分支名>如果不加<分支名>,则拉取服务器上所有更新。拉取后再合并需要的分支到本地分支。例如:git fetch origingit merge origin/master合并origin/master到当前分支上。当然这样做也会有冲突,但比较好处理。在merge前diff一下,可以掌握有什么改动。git diff origin/mastermerge后最好确认一下合并的是否符合我们意图。上面没有提到branch命令,将在下一篇文章中讲述。

以诚感人者,人亦诚而应。

caz28的专栏

相关文章:

你感兴趣的文章:

标签云: