git命令笔记

git init 初始化一个Git仓库,使用git init命令
git add <file> 添加大stage
git commit -m “” 提交到本地仓库

git config --global user.name "Your Name"
git config --global user.email "email@example.com"

git log --pretty=oneline

版本回退:
HEAD 当前版本
HEAD^ 上一版本
HEAD^^ 上上版本
HEAD~100 上100个版本
git reset --hard HEAD^
git reset --hard <commit id> 回退到指定版本
git reflog 查看命令历史,以便确定要回到未来的哪个版本

撤销修改:
1. 还没提价到stage
git checkout -- <file name> 撤销修改,使其与head相同
2. 已经提交到stage
git checkout -- <file name> 撤销到最近加入stage时的状态,此时文件还是stage,内容变为上次git add时的内容
git reset HEAD <file name> 把暂存区的修改撤销掉(unstage),重新放回工作区,这时,文件还包含修改,只是没有stage

删除文件
1. 首先物理删除文件 rm <file name>
2. git rm <file name>
3. git commit -m ""

git clone <https...../.git> 从远程仓库clone


分支管理
1.创建分支dev
git checkout -b dev
2. 罗列当前所有分支,当前分支前面会标一个*号
git branch
3. 切换到dev分支
git checkout dev
4. 合并分支dev修改到master分支
1. 首先切换到master:git checkout master
2. 合并:git merge dev
git merge命令用于合并指定分支到当前分支
5. 删除dev分支
git branch -d dev

当Git无法自动合并分支时,就必须首先解决冲突。解决冲突后,再提交,合并完成。
用git log --graph命令可以看到分支合并图。

通常,合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息。
如果要强制禁用Fast forward模式,Git就会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息。
git merge --no-ff -m "merge with no-ff" dev
合并分支时,加上--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并。

6. 如果要丢弃一个没有被合并过的分支,可以通过git branch -D <name>强行删除。

stash
1. git stash 将当前工作区内容保存, 这是用git status ,可看到没有修改
2. git stash list
3. git stash apply stash@{0} 这样,stash不会被删除,要用 git stash drop stash@{0}手动删除stash
git stash pop,使用最近的stash,并删除stash


查看远程库的信息,用git remote -v
推送分支:
场景:大家都在dev上开发
1. 提交代码时,首先git pull
2. 推送本地dev修改到远程dev:git push origin dev
3. 有冲突,则合并冲突,重新提交

标签管理
1. git tag <name> 就可以打一个新标签
2. git tag 查看所有标签
3. git tag <name> <commit id> 对指定commit id打标签
4. git show <tag name> 查看标签信息
5. git tag -d <tag name> 删除标签
创建的标签都只存储在本地,不会自动推送到远程。所以,打错的标签可以在本地安全删除
6. 如果要推送某个标签到远程,使用命令git push origin <tagname>
7. 一次性推送全部尚未推送到远程的本地标签:it push origin --tags
8. 删除远程标签
1. 先删本地: git tag -d <tag name>
2. 删远程:git push origin feature1 :refs/tags/<tag name>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值