版本管理之git命令

GIT 常用命令

这篇文章其实早就写了,总感觉缺点什么,一直没有发出来,发现等等着等着,也没有什么可以加的,就先这么发吧

Git 创建仓库

# 当前目录作为仓库
git init
# 指定目录作为仓库
git init newrepo
# 拷贝远程仓库
git clone XXX.git
# 拷贝远程仓库至指定目录
git clone XXX.git newrepo
# 下载指定分支(例如;develop)代码
git clone -b develop XXX.git
# git克隆远程仓库指定分支,并在本地重命名
git clone -b <远程指定分支> <远程仓库地址> <本地文件夹名>
# 拉取代码: git pull = git fetch + git merge
git pull
git fetch

配置

# 显示git配置信息
git config --list

# 提交代码时的用户信息配置(去掉global指对当前仓库有效)
$ git config --global user.name "monkey"
$ git config --global user.email monkey@qq.com

分支操作

# 查看本地分支关联(跟踪)的远程分支之间的对应关系
git branch -vv
# 创建分支,无name时列除本地的分支
git branch [branchname]
# 切换分支
git checkout branchname
# 切换分支
git checkout -b newbranchname
# 选中分支合并至当前分支
git merge branchname
# 挑选部分的commit来合并,commit-id可以通过git log 来获取
git cherry-pick commit-id
# 多个合并
git cherry-pick commit-idA commit-idB
# 连续的多个合并
git cherry-pick commit-idA..commit-idB
# 删除分支
git branch -d testing
# 将本地分支作为远程分支
git push origin newbranch
# 本地分支与远程远程分支关联
git push --set-upstream origin newbranch
# 删除远程分支
git push -d origin develop 
# 删除本地没用的 remotes/origin/branch
git remote prune origin
# 分支重命名-1: 修改本地分支名称
git branch -m oldbranch newbranch
# 分支重命名-2: 删除远程分支
# 删除远程分支
git push origin :oldbranch
# 分支重名命-3: 本地分支push到远程去
git push origin newbranch:newbranch

重要的阶段

# 特别的提交快照-打tag命令
git tag -a v1.0.0 -m "XXXX"
# 查看已有标签
git tag
# 删除标签
git tag -d v1.0.0
# 查看此版本所修改的内容
git show v1.0.0
# 查看此版本所修改的内容
git show v1.0.0
# Tag推送到远程仓库
git push origin v1.0
# push所有tag
git push origin --tags
# 查看tag打包时间
git log -1 --format=%ai v1.0.0

查看提交历史与版本回退

# 查看本地记录
git reflog
# 取消rebase状态
git rebase --abort 
# 查看历史提交记录
git log
# 查看历史记录的简洁的版本
git log --oneline
# 开启了拓扑图选项
git log --graph 
# 逆向查看日志
git log --reverse --oneline
# 查看最新5条更新日志
git log -5 --stat
# 查看指定用户的提交日志
git log --author=monkey --oneline -5
# Git 项目中三周前且在四月十八日之后的所有提交,我可以执行这个(我还用了 --no-merges 选项以隐藏合并提交)
git log --oneline --before={3.weeks.ago} --after={2010-04-18} --no-merges
# 以列表形式查看指定文件的历史修改记录。
git blame [file]
# 回退至指定版本
git reset --hard c7f2ecf0d4778db92f9f4994fff0b6f3c9530b06
# 强推到远程分支 -注:当远端设置了分支保护,则首先要将其取消,再强推;强推之后,之前的版本被覆盖了,无法再查看到。
git push origin HEAD --force

更多log日志的参考:http://git-scm.com/docs/git-log

暂存

# 暂存
git stash
# 取出最近一次暂存
git stash pop
# 暂存列表(可看到暂存编号)
git stash list
# 删除特定编号的stash项
git stash drop stash@{2}
# 删除最新暂存
git stash drop
git stash drop stash@{0}

提交与修改

# 添加文件至暂存区(所有文件)
git add .
# 添加指定文件至暂存区(包括子目录)
git add file1 file2
# 查看项目状态
git status

本地目录发布至远端仓库命示例

git init
git add README.md
git commit -m "[A] init my project"
git branch -M main
git remote add origin https://github.com/monkey01127/eslint-config-monkeyfe.git
git push -u origin main

本地已有仓库新增其他远端仓库示例

git remote add origin https://github.com/monkey01127/eslint-config-monkeyfe.git
git branch -M main
git push -u origin main
# 强制将代码推入2个仓库
git push -f origin1 dev git push -f origin2 dev
# 推入所有仓库
git push all

git 取消代理

# 使用unset指令取消代理:

unset http_proxy
unset  https_proxy
unset   HTTPS_PROXY
unset   HTTP_PROXY
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

monkey01127

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值