git教程

写教程是对自己知识的一种总结,总结出来跟大家分享。

在当前目录创建一个空的git仓库。
git init
git提交修改需要两步,下面是把xxx的修改提交到仓库:
git add xxx
git commit -m "注释"

下面说说后悔了怎么办。
如果你修改了文件,还没有add,可以用下面命令回退到修改前状态:

git checkout -- <file>...

如果要取消所有没有add的修改:

git checkout .

如果你已经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 origin
git merge origin/master

合并origin/master到当前分支上。
当然这样做也会有冲突,但比较好处理。
在merge前diff一下,可以掌握有什么改动。
git diff origin/master
merge后最好确认一下合并的是否符合我们意图。

上面没有提到branch命令,将在 下一篇文章 中讲述。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值