美文网首页
Git基本常用命令

Git基本常用命令

作者: forever远方 | 来源:发表于2018-04-20 13:49 被阅读0次

    创建仓库

    在本地某一文件夹下

    git init 初始化,把当前的目录变成可以管理的git仓库,生成隐藏.git文件

    git add README.md 添加README.md文件到暂存区

    git commit -m "first commit" 提交到本地仓库

    git remote add origin git@github.com:danxiang/MyGit.git 关联一个远程库

    git push -u origin master (第一次用 -u 关联连接)

    git remote remove origin 断开连接

    git clone git@github.com:danxiang/MyGit.git 克隆分支(直接在某一文件夹下使用git命令)

    git config --global credential.helper store 生成一个配置文件,pull每次都要输密码时使用这个,然后再输入一次密码就好了

    git remote 查看远程库信息

    git remote –v 查看远程库的详细信息

    git status 查看状态

    git cherry -v 查看未push的提交记录(已经commit 但未push)

    git log master ^origin/master 则可以查看未传送提交的详细信息

    git push origin master 推送至master分支

    git pull origin dev1.0 拉取

    git checkout 文件名 放弃某个文件的所有修改

    git checkout . 放弃所有文件的所有修改

    git reset --hard 放弃所有文件的所有修改

    git clean -df 强制丢弃本地修改

    版本控制

    git reset –hard HEAD^ 回退到上一个版本

    git reset –hard HEAD^ 回退到上上一个版本

    git reset –hard HEAD~100 回退到前100个版本

    git reset –hard 版本号 回退到指定的版本号

    git push origin master -f 强制提交

    分支管理

    git branch 查看本地所有分支

    git branch -a 查看远程所有分支

    git branch dev1.0 创建分支

    git checkout dev1.0 切换分支

    git checkout -b dev1.0 创建并切换分支

    git merge dev1.0 合并dev1.0分支到当前分支(需先切到master分支再把dev1.0合并到master上)

    git branch -d dev1.0 删除本地分支

    git push origin --delete dev1.0 删除远程分支

    git push origin dev1.0 把dev1.0分支推到远程分支

    git branch -m oldName newName 本地分支重命名

    2.远程分支重命名

    .如果修改远程分支,只需要将本地分支重命名为新分支名称,然后删除远程分支,再把本地分支上传就可以了

    git merge --abort 中断merge状态,commit后拉代码时用

    git reset --hard commit_id 撤销commit

    git stash 把当前的工作隐藏起来 等以后恢复现场后继续工作

    git stash list 查看所有被隐藏的文件列表

    git stash apply 恢复被隐藏的文件,但是内容不删除

    git stash drop 删除文件

    git stash pop 恢复文件的同时 也删除文件

    git tag 列出现有tag

    git tag -l 'v1.4.2.*' 模糊列出现有tag

    git tag <name> 打tag节点

    git tag v0.9 f52c633<commitId> 对某次commit提交打标签

    git tag -a v0.1 -m "version 0.1 released" 1094adb 创建带有说明的标签,用-a指定标签名,-m指定说明文字

    git ls-remote --tags origin 查看远程所有 tag

    git push --tag 提交tag

    git tag -d <tagName> 删除tag

    git push origin <tagName> 推送到远程仓库

    git checkout -b <branchName> <tagName> 检出标签

    git show v0.1

    git checkout . #本地所有修改的。没有的提交的,都返回到原来的状态

    git checkout --fileName 丢弃该fileName文件的修改

    这里有2种情况,如下:

    1、还没有放到暂存区,使用 撤销修改就回到和版本库一模一样的状态。

    2、另外一种是readme.txt已经放入暂存区了,接着又作了修改,撤销修改就回到添加暂存区后的状态

    git diff readme.txt 查看readme.txt文件修改的内容

    git log 查看历史记录

    在git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改根目录中 .gitignore 文件的方法(如无,则需自己手工建立此文件)。这个文件每一行保存了一个匹配的规则例如:

    此为注释 – 将被 Git 忽略

    *.a # 忽略所有 .a 结尾的文件

    !lib.a # 但 lib.a 除外

    /TODO # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO

    build/ # 忽略 build/ 目录下的所有文件

    doc/*.txt # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt

    |

    规则很简单,不做过多解释,但是有时候在项目开发过程中,突然心血来潮想把某些目录或文件加入忽略规则,按照上述方法定义后发现并未生效,原因是.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。那么解决方法就是先把本地缓存删除(改变成未track状态),然后再提交:

    git rm -r --cached .

    git add .

    git commit -m 'update .gitignore'

    git push origin

    mkdir fileName 创建一个空目录 fileName指目录名

    pwd 显示当前目录的路径。

    cat fileName 查看文件内容

    rm fileName 删除文件

    相关文章

      网友评论

          本文标题:Git基本常用命令

          本文链接:https://www.haomeiwen.com/subject/kgiakftx.html