GIT常用命令

2019-3-6 hubo 其它

开始一个git项目
git init 初始化一个git项目
git remote add origin git@github.com:michaelliao/learngit.git 关联一个远程库
git config --list 配置
git config --global user.name "Leviio" 设置全局用户名 如果去掉 --global 则是设置当前项目的用户名
git config --global user.email "leviio@qq.com" 设置全局email

分支操作
git branch -a 查看所有分支 包括远程分支
git checkout -b dev
首先,我们创建dev分支,然后切换到dev分支git checkout命令加上-b参数表示创建并切换,相当于以下两条命令:git branch dev 创建分支 git checkout dev 切换分支
git branch 查看当前分支
git checkout master 切换分支到 master
git branch dev 创建分支
git push origin --delete dev 删除远程分支
git branch -D dev 删除分支
git merge dev 把dev分支的工作成果合并到当前分支上
git push -u origin <branch> 当第一次提交远程分支时使用-u建立远程分支,但是开源中国好像不必要,此处理解不透彻
git push origin --delete <branchName> 删除远程分支 或推送一个空分支 git push origin : 两种语法一样

拉取远程分支到本地
git fetch origin 远程分支名x:本地分支名x

扩展阅读
一个成功的Git分支模型

git日志操作
git log 提交日志
git log --pretty=oneline
git log --pretty=oneline --abbrev-commit
git reflog 记录每一次提交的版本日志

其他
git reset --hard HEAD^ 退回上一个版本
git reset --hard 232331233 指向某个版本

git checkout -- readme.txt 将某个文件恢复到 回到最近一次git commit或git add时的状态。其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。如果文件已经被放到缓冲区,则需要先用 git reset HEAD readme.txt 把文件从缓冲区拿出来再使用git checkout -- readme.txt
git reset HEAD readme.txt 把暂存区的修改撤销掉(unstage),重新放回工作区

tag操作
git push origin --delete tag 删除tag
git tag 查看当前标签
git tag V1.0 默认给最新提交的commit打标签
git tag v0.9 6224937 给历史的某个commit id打标签 可以使用 git log --pretty=oneline --abbrev-commit 查看历史commit id
git show v0.9 查看某个标签信息
git tag -a v0.1 -m "version 0.1 released"3628164 添加标签时增加说明
git tag -d v0.1 删除标签
git push origin --delete tag 删除远程标签,或推送一个空标签到远程 git push origin :refs/tags/
git push origin 将标签推送至远程
git push origin --tags 一次性推送全部未推送的标签

注意: .gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。
正确的做法是在每个clone下来的仓库中手动设置不要检查特定文件的更改情况。
git update-index --assume-unchanged PATH 在PATH处输入要忽略的文件。

git获取帮助 在指令后面添加 --help 参数,如 git diff --help

网站备案号:京ICP备11043289号-1 北京市公安局网络备案 海1101084571
版权所有 北京育灵童科技发展有限公司 Copyright © 2002-2024 www.elight.cn, All Rights Reserved