git新手入门

git branch单独查看所有分支,加分支名将创建一个新分支 而HEAD指向当前所在分支,此时并不是新分支
(git branch –d删除分支、已合并的可以删除,-v检查每个分支最后一次提交,-D强制删除,–merged 和 --no-merged 会在没有给定提交或分支名作为参数时, 分别列出已合并或未合并到 当前 分支的分支)
如果想要查看设置的所有跟踪分支,可以使用 git branch 的 -vv 选项。

git checkout:切换到一个已存在的分支,即改变HAED指向到新分支
(我们会在创建一个新分支后立即切换过去,这可以用 git checkout -b 一条命令搞定。)
git checkout --track origin/serverfix:
git merge: 将 新分支合并回你的 master 分支来部署到线上
(当你试图合并两个分支时, 如果顺着一个分支走下去能够到达另一个分支,那么 Git 在合并两者的时候, 只会简单的将指针向前推进(指针右移),因为这种情况下的合并操作没有需要解决的分歧——这就叫做 “快进(fast-forward)”)
当有merge conflict的时候,此时 Git会做三方合并,但是没有自动地创建一个新的合并提交。 Git 会暂停下来,等待你去解决合并产生的冲突。 你可以在合并冲突后的任意时刻使用 git status 命令来查看那些因包含合并冲突而处于未合并(unmerged)状态的文件:
git mergetool是可视化合并工具

git clone:Git 克隆的是该 Git 仓库服务器上的几乎所有数据(你可以通过额外的参数指定新的目录名,地址后+ 文件名) -o改remote名字
git fetch 会访问远程仓库,从中拉取所有你还没有的数据 (git fetch --all)
git commit:提交已暂存文件,-m添加提交信息,-a 跳过add,单独打会出文本编辑器写多行
git add:git add 开始跟踪一个文件/git add *
git push:当你想分享你的项目时,必须将其推送到上游。 这个命令很简单:git push
推送本地的 serverfix 分支来更新远程仓库上的 serverfix 分支
(要特别注意的一点是当抓取到新的远程跟踪分支时,本地不会自动生成一份可编辑的副本(拷贝)。 换一句话说,这种情况下,不会有一个新的 serverfix 分支——只有一个不可以修改的 origin/serverfix 指针。
可以运行 git merge origin/serverfix 将这些工作合并到当前所在的分支;
git checkout -b serverfix origin/serverfix
在自己的 serverfix 分支上工作,可以将其建立在远程跟踪分支之上
创建其新的跟踪分支
) git push origin --delete serverfix删除分支

git pull:如果你的当前分支设置了跟踪远程分支, 那么可以用 git pull 命令来自动抓取后合并该远程分支到当前分支。 这或许是个更加简单舒服的工作流程啊
=git fetch + git merge

git rebase:你可以使用 rebase 命令将提交到某一分支上的所有修改都移至另一分支上,就好像“重新播放”一样。git rebase
git checkout experiment
git rebase master
在 C4(experiment) 中引入的补丁和修改,然后在 C3(master) 的基础上应用一次
git checkout master
git merge experiment 再将两个合并
git rebase --onto master server client取出 client 分支,找出它从 server 分支分歧之后的补丁, 然后把这些补丁在 master 分支上重放一遍,让 client 看起来像直接基于 master 修改一样
git rebase master server之后就可以git branch –d来删除branch了
如果提交存在于你的仓库之外,而别人可能基于这些提交进行开发,那么不要执行变基。
(git pull --rebase)

git cherry-pick:拣选类似于对特定的某次提交的变基。 它会提取该提交的补丁,之后尝试将其重新应用到当前分支上。
git cherry-pick e43a6 你希望将提交 e43a6 拉取到 master 分支
git reset:git reset HEAD + filename来取消staged file
git reset --hard 目标版本(一般是7位版本号): 命令将版本回退
因为我们本地库HEAD指向的版本比远程库的要旧,我们要用git push -f强制推上去
git revert:如果我们想撤销之前的某一版本,但是又想保留该目标版本后面的版本,记录下这整个版本变动流程,就可以用这种方法。
使用“git revert -n 版本号”反做,并使用“git commit -m 版本名”提交:
再使用git push

(git status查看文件状态)
(git diff尚未暂存的文件区别) git diff –staged/–cached 命令。 这条命令将比对已暂存文件与最后一次提交的文件差异:
先rm,再git rm就变成staged文件,再commit就提交了(-f用来强制删除)
当我们需要删除暂存区或分支上的文件, 但本地又需要使用, 只是不希望这个文件被版本控制, 可以使用 git rm --cached
git rm --cached 会从index里面删除该文件,下次commit的时候会修改git仓库,但是本地的文件还是保留
git mv file_from file_to // git log查看历史

如果想查看你已经配置的远程仓库服务器,可以运行 git remote 命令,你也可以指定选项 -v,会显示需要读写远程仓库使用的 Git 保存的简写与其对应的 URL。
git remote add 添加一个新的远程 Git 仓库
如果想要查看某一个远程仓库的更多信息,可以使用 git remote show 命令

git tag 后 git push origin –tags 就能推送所有tag,-d删除tag
(如果你想查看某个标签所指向的文件版本,可以使用 git checkout 命令, 虽然这会使你的仓库处于“分离头指针(detached HEAD)”的状态)
git diff --check将会找到可能的空白错误并将它们为你列出来。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值