git命令学习(一)
1.远程分支
远程分支有一个特别的属性,在你检出时自动进入分离 HEAD 状态。Git 这么做是出于不能直接在这些分支上进行操作的原因, 你必须在别的地方完成你的工作, (更新了远程分支之后)再用远程分享你的工作成果
远程分支命名规则
大多数的开发人员会将它们主要的远程仓库命名为 origin,并不是 o。这是因为当你用 git clone 某个仓库时,Git 已经帮你把远程仓库的名称设置为 origin 了
2.git fetch
git fetch 做了些什么
git fetch 完成了仅有的但是很重要的两步:
- 从远程仓库下载本地仓库中缺失的提交记录,不会修改本地的任何文件
- 更新远程分支指针(如 o/main)
git fetch 实际上将本地仓库中的远程分支更新成了远程仓库相应分支最新的状态。
远程分支反映了远程仓库在你最后一次与它通信时的状态,git fetch 就是你与远程仓库通信的方式了
git fetch 通常通过互联网(使用 http:// 或 git:// 协议) 与远程仓库通信。
3.git pull
git pull命令的作用是:取回远程主机某个分支的更新,再与本地的指定分支合并.完整命令
git pull <远程主机名> <远程分支名>:<本地分支名>
例如要取回origin主机的next分支,与本地的master分支合并,需要写成下面这样 -
git pull origin next:master
如果远程分支(next)要与当前分支合并,则冒号后面的部分可以省略。上面命令可以简写为:
git pull origin next
上面命令表示,取回origin/next分支,再与当前分支合并。实质上,这等同于先做git fetch,再执行git merge
git fetch origin <!--相当于从远程获取最新版本到本地,不会自动合并-->
git merge origin/next
4.git push
5.git merge
6.git commit
7.rebase
git pull 就是 fetch 和 merge 的简写,类似的 git pull --rebase 就是 fetch 和 rebase 的简写!
$ git reset --hard HEAD~3 # 回退上上上一个版本
$ git reset –hard bae128 # 回退到某个版本回退点之前的所有信息。
$ git reset --hard origin/master # 将本地的状态回退到和远程的一样
他写的一些命令
git pull origin test --rebase
git remote -v
git add .
git stash
git stash -u
git reset --hard HEAD~12
通过分支将当前所写的内容进行备份git stash