git 大法,玩转版本管理

简介: 最近有小伙伴问我 git 应该怎么学,我觉得 git 就是多用就会了,把常用的命令先看两边,然后再在实际过程中运用,忘了再去查一查,用多了就记住了,当然这只是代码管理,要达到真正的版本管理,还需要一些规范。

最近有小伙伴问我 git 应该怎么学,我觉得 git 就是多用就会了,把常用的命令先看两边,然后再在实际过程中运用,忘了再去查一查,用多了就记住了,当然这只是代码管理,要达到真正的版本管理,还需要一些规范。比如提交代码的规范,各个版本之间怎么管理,分支怎么管理等等,我尽量在下一篇文章中分享。

今天文章就先把一些常用的命令进行介绍,看看自己有哪些还没用过的,记下来,说不定遇到这种事儿就会用了。

工程下载、分支的增删查改

工程下载:

  • clone 远程工程:git clone https://XXXX.git

  • fetch 远程分支到本地某分支:git fetch origin

    :

分支的增删查改

  • 查看分支:git branch

  • 查看远程所有分支:git branch -r

  • 查看本地和远程所有分支:git branch -a

  • 创建分支:git branch

  • 切换分支:git checkout

  • 创建并切换分支:git checkout -b

  • 合并某分支到当前分支:git merge

  • 把分支推送到远程:git push origin

  • 删除本地分支:git branch (-d | -D)

  • 删除远程分支:git push origin -d

  • 分支重命名:git branch (-m | -M)

查看提交信息日志

  • 查看分支最近一次的修改列表:git status

  • 查看分支的commit信息(倒叙排列)

  • git log 查看commit id, Author, Date, commit info

  • git shortlog 按提交者分类显示提交信息

  • git log --oneline 只输出commit id 和 commit info

  • git log --stat 查看增删查改了哪些文件

版本回退

  • 回退到上一版本:git reset --hard HEAD^

  • 回退到上上版本:git reset --hard HEAD^^

  • 回退到上上版本:git reset --hard HEAD~2

  • 回退到某个版本:git reset --hard

  • 强制推送到远程分支:git push -f

注意:
1、HEAD 指向的版本是当前版本,^ 表示上一个版本,~N 表示上N个版本,可简写 
2、git log 可以查看
3、git reflog 可以查看命令历史,用来回到某个未来的版本

文件的添加、提交、拉取、推送、比对、合并

  • 添加新增文件:git add README.md

  • 添加所有新增文件:git add .

  • 暂存变更文件:git stash [save "暂存备注"]

  • 恢复暂存文件:git stash pop

  • 提交变更文件:git commit -m "变更备注"

  • 拉取远程代码:git pull [origin

    ]
  • 推送到远程:git push origin

  • 比对两个分支:git diff

  • 比对两个分支变更的文件列表:git diff

    --stat
  • 比对本地和远程分支:git diff

    origin/
  • 合并某个分支:git merge

  • 强制覆盖本地分支: 
    1、git fetch --all 
    2、git reset --hard origin/


    3、git pull

常用选项和其他命令

git 中部分选项解释

  • -f --force:强制

  • -d --delete:删除

  • -D --delete --force

  • -m --move:移动或重命名

  • -M --move --force

  • -r --remote:远程

  • -a --all:所有

其他命令

  • 清空工程:

$ git rm -rf .
每隔X秒运行一次git pull:

for((i=1;i<=10000;i+=1)); do sleep X && git pull; done
使用git rebase将一个feature分支变基到master分支

$ git checkout feature 
$ git rebase master

配置相关

  • 查看当前配置: git config --list

  • 修改 git 的 name 和 email :

git config --global user.name <name>
git config --global user.email <email>

原文发布时间为:2018-10-29

本文作者:桃翁  

本文来自云栖社区合作伙伴“前端桃园”,了解相关信息可以关注“前端桃园”。

相关文章
|
10月前
|
开发工具 git
记IDEA Git版本回退并push到远程操作
记IDEA Git版本回退并push到远程操作
217 1
记IDEA Git版本回退并push到远程操作
|
10月前
|
开发工具 git
【git 实用指南】git 修复错误提交,版本回退
【git 实用指南】git 修复错误提交,版本回退
126 1
|
7天前
|
安全 开发工具 Android开发
【Android Git】Git版本回退方式
在实际操作中,选择合适的版本回退方式,可以有效地管理代码版本,提高开发效率和代码质量。
40 26
|
19天前
|
IDE 开发工具 git
pycharm如何查看git历史版本变更信息
通过上述步骤,你可以在 PyCharm 中轻松查看 Git 的历史版本变更信息,无论是针对整个项目、特定文件还是分支。使用 PyCharm 的 Git 集成功能,可以更高效地管理和审查代码变更,提高开发过程的透明度和可维护性。
59 19
|
9月前
|
开发工具 数据中心 git
详解IDEA git 版本回滚
详解IDEA git 版本回滚
346 0
|
10月前
|
程序员 Linux 开发工具
振南技术干货集:研发版本乱到“妈不认”? Git!(5)
振南技术干货集:研发版本乱到“妈不认”? Git!(5)
|
10月前
|
存储 安全 Linux
振南技术干货集:研发版本乱到“妈不认”? Git!(4)
振南技术干货集:研发版本乱到“妈不认”? Git!(4)
振南技术干货集:研发版本乱到“妈不认”? Git!(4)
|
6月前
|
安全 开发工具 git
git合并错了,我想回退到之前的版本
git合并错了,我想回退到之前的版本
|
8月前
|
开发工具 git
unable to index file ‘~$git提交版本号.xlsx‘
unable to index file ‘~$git提交版本号.xlsx‘
|
9月前
|
开发工具 git
技巧分享:Git怎么修改已经提交版本的版本注释
技巧分享:Git怎么修改已经提交版本的版本注释
123 4