git的基本使用命令操作

Linux操作命令行:
    mkdir - 创建文件夹,
    cd - 切换文件路径
    pwd - 显示文件路径
    ls -ah - 可以查看隐藏的文件夹名(.git)
    cat 文件名 - 查看文件内容
    rm 文件名 - 删除指定文件名

git 操作命令行:
   
    git config --global user.name "your name" - 给该电脑取名
    git config --global user.email "your email" - 配置Email邮箱

  特殊:git config --global core.longpaths true - 报错内容为(file name too long)时配置,就可以解决文件名过长的问题    

    (我是在moogoose模块clone或者push的时候会出现这种现象)

git init - 初始化一个仓库(repository)
    git add 文件名 - 把文件添加到仓库
    git commit -m "提交解释语" - 把文件提交到仓库
    git status - 查看提交状态,已经文件状态
    git diff 文件名 - 查看文件具体修改了什么内容
    git log - 查看整个仓库提交日志
    git log --pretty-oneline - 一行显示查看日志
    git reset --hard HEAD^ - 回退上一个版本(HEAD^^(上两个版本) HEAD~100(上一百个版本))
    git reset --hard 提交版本号 - 回到该版本号对应的版本(版本可以只有前几位数)
    git reflog - 查看命令历史操作,可以滚到任意一个版本号对应的版本
    git diff HEAD -- 文件名 - 可以查看工作区和版本库里最新版本的区别(大写的HEAD可以为小写)
    git checkout -- 文件名 - 撤销修改文件 或 撤销暂存区添加的修改(文件名处可以为. 代表所有文件),在这里的 -- 很重要,如果没有的话就代表“创建一个新的分支”
    git reset HEAD 文件名 - 从暂存区回滚到工作区(此处只是回滚到工作区),如果想要撤销修改的话,需要用到上面的 git checkout -- file 的命令操作撤销修改,

              若你改错了东西并且还提交到了版本库里了,可以用版本回退 git reset --hard HEAD^ 的命令行操作版本

--- 版本回退:git reset --hard HEAD^
            --- 暂存区回退:git reset HEAD 文件名
            --- 文件修改回退:git checkout -- 文件名
                (三个的层级关系不同)
    git rm 文件名 - 版本库中删除文件,最后确定删除就commit,如果删除错误可以根据上面几种回退的方式进行相应的操作

git remote add 远程仓库名 远程仓库的地址 - 添加远程仓库的地址,远程仓库名一般为 origin 默认称远程仓库为 origin 可以叫其他的名称(给远程仓库取得名字)
            如果存在多人协同开发,在你提交后,准备push前,你需要pull下来在本地合并后,才能push上去
    git clone 远程仓库地址

git checkout -b 分支名 - 创建分支并切换分支到该创建的分支上(-b表示创建分支并切换分支)
    git branch 分支名 - 创建分支 上面一行可以等同下面两行命令
    git checkout 分支名 - 切换分支
     git branch - 查看分支 (带*的前面分支为当前commit分支)
     git merge 分支名 - 当前分支合并指定分支
     git branch -d 分支名 - 删除分支
     git log --graph - 可以查看分支合并情况
         --- git log --graph --pretty=oneline - 一行显示合并图,
         --- git log --graph --pretty=oneline --abbrev-commit - 一行显示的同时进行缩写提交id号
     
     git stash - 主要用来进行该分支的保留存储,等到调试BUG成功后,再进行恢复原来的分支继续进行下一步工作
     git stash list - 用来查看暂停保留存储的列表信息显示
     git stash apply - 恢复到分支的正常状态,恢复后,stash的内容不删除
     git stash drop - 用该命令行来进行stash的内容删除
     git stash pop - 恢复的同时将stash内容也删除了
     git stash apply [email protected]{0} - 指定恢复分支的那个stash版本状态

git branch -D 分支名 - 强制删除一个未合并的分支

git remote - 查看远程仓库的信息
     git remote -v - 显示更详细的信息
     git push origin master - 将本地的master主分支推送到默认远程仓库名为origin的仓库中
     git push origin 分支名 - 将本地分支推送到远程仓库中
     git pull - 将远程仓库分支的内容与其他合作成员push到该分支的内容进行本地合并,可能合并后会有冲突,需要手工本地解决冲突,后push
     git pull 仓库名 分支名 - pull指定仓库名及分支

git tag 标签号 - 添加标签号(默认最近一次提交的内容)
     git tag 标签号 commitId - 指定commit id添加标签名
     git tag - 可以查看所有标签号
     git show 标签号 - 显示该标签下的提交信息显示
     git tag -a 标签号 -m 说明 commitID - a指定标签名,m提交指定说明文,指定提交版本号
     git tag -s 标签号 -m 说明 commitID - s用私钥签名一个标签
     git tag -d 标签号 - 删除标签号
     git push 仓库名 标签名 - 远程推送标签名到该仓库中
     git push 仓库名 --tags - 推送全部标签名到仓库
     git push 仓库名 :refs/tags/标签名 - 删除远程标签名(需要在本地先删除标签名后再删除仓库中标签名)

git config --global alias.简写名 实际命令操作符 - 例如 git config --global alias.st status 当输入命令执行的时候:git st 回车就OK啦

时间: 2024-10-10 20:58:39

git的基本使用命令操作的相关文章

Git的纯命令操作,Install,Clone , Commit,Push,Pull,版本回退,撤销更新,分支的创建/切换/更新/提交/合并,代码冲突

Git的纯命令操作,Install,Clone , Commit,Push,Pull,版本回退,撤销更新,分支的创建/切换/更新/提交/合并,代码冲突 这篇是接着上篇分布式版本库--Windows下Git的环境部署以及在GitHub上开源自己的项目讲的,上篇主要是说用GUI来图形化界面操作,但是一般我们程序员也不会这么干,用命令又轻松又愉悦,所以,这里我就再开了一篇来专门说一下纯命令是怎么去操作的,但是要注意哦,其实廖雪峰老师的网站就是非常赞的学习资源哦! 廖雪峰老师:http://www.li

git常用命令操作

目前市场主流的版本控制系统主要分为:集中式版本控制系统与分布式版本控制系统.集中式版本控制目前主流的:SVN分布式版本控制系统目前主流的:Git 两者之间的区别: 集中式有中央服务器,开发人员需要从中央服务器获得最新版本的项目然后在本地开发,开发完推送到中央服务器中,因此无法脱离服务器. 分布式没有中央服务器,开发人员本地都有local repository 集中式必须要联网才能工作,而且对网络的依赖性较强,如果推送的文件比较大而且网络状态欠佳,则提交文件的速度会受到很大的限制. 分布式在没有网

git工作中的常用操作

上班开始,打开电脑,git pull:拉取git上最新的代码: 编辑代码,准备提交时,git stash:将自己编辑的代码暂存起来,防止git pull时与库中的代码起冲突,否则自己的代码就白敲了: 然后,git pull:拉取一下代码,与库中代码,做到同步,有冲突则解决冲突,如果省了这一步,别人有提交的代码,没有更新,自己提交就会报错,再走这一步,就会把别人的代码拉取出来,然后一起提交,就相当于你提交了自己的代码,也提交了别人的代码:还有,有时这样会使库中代码乱掉,别人的心血也会丢失,你就是罪

Git中的merge命令实现和工作方式

想象一下有如下情形:代码库中存在两个分支,并且每个分支都进行了修改,最后你想要将其中的一个分支合并到其他的分支中.个人博客网址 http://swinghu.github.com/ 那么要问合并的处理过程是怎么样的呢?Git是对每个分支,依据分支的历史数据按照序列化操作,还是它只是合并每个分支里文件的最后版本?这是一个问题,我想对git的merge操作有必要进行分析一下. 回忆一下,我们知道Git的版本库内部结构是以有向无环图(directed acyclic graph)组织起来的:每一次co

git常用分支管理命令

切换分支:git checkout name 撤销修改:git checkout -- file 删除文件:git rm file 查看状态:git status 添加记录:git add file 或 git add . 添加描述:git commit -m "miao shu nei rong" 同步数据:git pull 提交数据:git push origin name 分支操作 查看分支:git branch 创建分支:git branch name 切换分支:git che

git常用的一些命令总结

git常用的一些命令总结 git init 创建一个版本库 git add file 将文件从工作区提交到暂存区 git commit -m "blabla--" 将文件中暂存区提交到仓库 git status 查看仓库当前的状态 git diff 可以查看具体修改了哪些内容 git log 查看我们提交的历史记录 git log –pretty=oneline #输出少量版本信息和提交的内容 git reset –hard HEAD^ #返回上一个版本 cat filename #查

github总结(4)--关于git reset --hard这个命令的惨痛教训

背景叙述: 前几天,上传自己的个站到git上的时候,手欠脑发晕的用了次git reset --hard xxxxxx 命令.由于只在线上传入了一个index.html页面(自己都不知道自己咋想的,就这么干了,O__O"-),且第一次commit的时候也只commit了一个index.html文件,其他文件的只是通过git add --all命令进行本地追踪. 然后,突发奇想,想恢复到第一次提交的时候(天知道当时自己咋想的)!于是自然(大概也只有天知道当时手咋那么自然随意)的用了git reset

MAC下的命令操作

打印环境变量:echo $PATH设置环境变量:export PATH=$PATH:/usr/local/git/bin应用:在git-scm下载git2.0.1版本,图形安装后,直接在终端敲giv --version提示-bash comman nof found. echo $PATH发现没有/usr/local/git/bin这个环境变量,于是把这边环境变量加进去就好了. MAC下的命令操作,布布扣,bubuko.com

Git 基本原理与常用命令

平时使用过两种版本控制软件 SVN 和 Git,平心而论,如果纯粹自己使用,那么绝对 Git 更加适合,本地库.远程库.离线工作.强大而灵活的分支.大名鼎鼎的Github, 这些都是选择 Git 的原因.记得刚接触时Git,感觉 Git 如此强大,再加上其是由大名鼎鼎的 Linus 所编写,所以花了很多的时间看各种资料,不过后来那些不常用的命令与功能还是仅仅停留在知道与了解的层面.Git 只是一种工具,是为了满足某种需求而被编写出来的一种工具,对于工具做到善加利用即可.当然,要做到善加利用,一定