git常用命令

init

git init //在当前目录新建一个仓库

git init [project-name] //在一个目录下新建本地仓库

clone

git clone [url] //克隆一个远程仓库

git clone -b 分支名 地址 // 克隆分支的代码到本地

status

git status [file-name] //查看指定文件状态

git status //查看所有文件状态

add

git add [file-name1] [file-name2] ... //从工作区添加指定文件到暂存区

git add . //将工作区的被修改的文件和新增的文件提交到暂存区,不包括被删除的文件

git add -u . //u指update,将工作区的被修改的文件和被删除的文件提交到暂存区,不包括新增的文件

git add -A . //A指all,将工作区被修改、被删除、新增的文件都提交到暂存区

commit

git commit -m [massage] //将暂存区所有文件添加到本地仓库
* git commit中的备注信息尽量完善 养成良好提交习惯 例如 git commit -m "变更(范围):变更的内容"

git commit [file-name-1] [file-name-2] -m [massage] //将暂存区指定文件添加到本地仓库

git commit -am [massage] //将工作区的内容直接加入本地仓库

git commit --amend //快速将当前文件修改合并到最新的commit,不会产生新的commit。在提交commit后发现还有部分文件修改忘记提交了可以是用该命令
*-m是指直接在后面写上版本的注释,不加-m的话会用一个vim打开文件让你写入massage,有未追踪的文件将会失败,需要add加入暂存区。

fetch

git fetch //拉取远程分支最新的commit到本地仓库的origin/[branch-name]

pull

git pull //从远程仓库拉取代码到工作空间

*pull 和 fetch的关系

git pull == git fetch + git merge

push

git push //将文件添加到远程仓库

git push -f //强制提交,当我们本地reset到旧的版本时,然后普通push会被拦截,因为此是本地HEAD指向比远程库还要旧

git push origin [branch-name] //推送当前本地分支到指定远程分支

checkout

git checkout -- [file-name] // 撤销工作区的修改 例:git checkout -- README.md
*最好加--,没有的话就把它当作切换分支看待,切换到另一个分支了,如果没有这个分支也会把它当作文件执行。用暂存区的文件覆盖掉工作区的文件,如果暂存区没有可更新的就会用commit的文件更新工作区的文件.

git checkout [branch] //切换分支

git checkout -b [new-branch-name] //创建并切换分支

merge

git merge //合并本地origin/[branch-name]和HEAD->[branch-name]的代码,并同步到工作空间

git merge [branch-name] //用于合并指定分支到当前分支

git merge --quit //退出当前分支合并,当合并后冲突很多,要撤回合并分支就可以用这个命令

git merge --no-ff -m [massage] [branch-name] //不使用Fast forward合并分支,这样会创建新的commit,所以需要massage。这样被合并的分支HEAD指向是会变的。
*如果使用了Fast forward方式合并分支,那么删除次要分支的时候历史分支记录也会被删除,这样就无法追寻分支合拼信息了。

update origin

git remote update origin --prune  //更新远程分支列表到本地
*更新后需重启一下编辑器
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值