Git命令

常用Git命令

初始化配置
git config --global user.name “XXX"
git config --global user.email “XXXX"
设置大小写敏感
git config core.ignorecase false

生成密钥
ssh-keygen -t rsa -C “your_email”

创建项目:$ mkdir s15_gitpro
  如果想让 git 管理你的代码,进入 s15_gitpro 下执行 $ git init
  初始化空的目录放在 .git 下
创建仓库。$ git init
  创建文件:vim Readme
注:可能我们会发现当前目录下多了一个.git的目录,这个目录是Git来跟踪管理版本库的,没事千万不要手动修改这个目录里面的文件,不然改乱了,就把Git仓库给破坏了。

代码上传到 s15_gitpro 时代码还没有被管理,必须明确告诉 git 帮我管理这个文件。
$ git add Readme

查看状态。(可以查看到哪个文件自上次提交后的修改情况)
$ git status
modified: test.rtf   # 说明test.rtf 文件有修改

    On branch master
    No commits yet

    Changes to be committed:  # 你有修改需要提交
    (use "git rm --cached <file>..." to unstage)    
        new file: Readme


    Untracked files:      # 未被 git 跟踪的文件
    (use "git add <file>..." to include in what will be committed)
        conf/

添加全部文件:$ git add .
$ git add <文件> // 将有修改的文件添加到本地缓存中 git add . 是添加所有修改
或者 添加指定文件:$ git add "test.rtf"
注:(git add .)   add后面带一个空格再加点


想被 git 管理还差一步,此时代码被真正的管理了
$ git commit # 会出来一个编辑器 ,需要填写备注信息
$ git commit -m "本次修改信息" // 提交本次修改,一般是在git add之后操作
    mkdir s15_gitpro    # 创建项目
    cd s15_gitpro --> git init  # 管理代码
    vim Readme    # 创建文件
    git add Readme  # 添加文件
    git commit    # 管理代码,添加备注
 
提交修改
git reset . // 撤销add
git rm --cached . // 撤销add


查看修改内容
$ git diff test.rtf
查看提交记录
$ git log

版本回退。如果我们在使用过程中,想退到之前的某一版本。
回退到上一个版本:$ git reset --hard HEAD^
回退到某一版本:$ git reset --hard bf4dc99
  例: HEAD is now at bf4dc99  
将远端代码clone到本地目录 git clone
<远端git> <本地目录>
删除文件
$ git rm test.rtf
$ git commit -m "删除文件"
切换分支 git checkout
<branch_name> 以当前分支为蓝本新建分支并切换到新分支 git checkout -b <branch_name> 当前分支合并其他分支 git merge <branch_name> 远端新建分支,其实就是将本地分支推送至远端 git push origin <local_branch_name>:<remote_branch_name> 删除远端分支,其实就是推送了一个空的分支到远端覆盖了原来的远端分支 git push origin :<remote_branch_name> 从远端拉取分支,并建立对应关系 git checkout -b <local_branch_name> origin/<remote_branch_name> // 或者 git branch —track <local_branch_name> origin/<remote_branch_name> 本地已经存在的分支和远端分支建立对应关系 git branch —set-upstream <local_branch_name> origin/<remote_branch_name> 添加远端库 git remote add <远端库代称> <远端库地址> git clone <远端库地址> <目录> //不需要git init 回滚到某一个提交版本 git reset --hard/soft <commit_id> // 回滚到某一个版本 git reset --hard/soft HEAD~<num> // 回滚num个提交 git revert <merge_commit_id> -m number // 撤销某一次merge 强制远端覆盖本地 git fetch --all git reset --hard origin/<remote_branch_name> 提交日志查看方式 git log -p 每一次提交具体差异 git log —stat 显示文件修改差异,没显示具体修改 git log —graph 树形状提交记录,可查看分支合并信息 git pull —rebase有冲突后,解决冲突,使用 git add .然后使用git rebase --continue 切换到某个分支,将其他分支的某次提交应用到该分支 git checkout <branch_name> git cherry-pick <commit id> 前者表示把到之间(左开右闭,不包含start-commit-id)的提交cherry-pick到当前分支;后者表示把到之间(闭区间,包含start-commit-id)的提交cherry-pick到当前分支。 git cherry-pick <start-commit-id>..<end-commit-id> git cherry-pick <start-commit-id>^..<end-commit-id> 新建tag git tag <tag_name> //轻量标签 git tag -a <tag_name> -m "tag_msg" // 附注标签 git tag -a <tag_name> <commint_id> // 给某次提交添加标签 删除tag git tag -d <tag_name> 查看tag git tag // 查看所有tag git show <tag_name> // 查看某条tag 提交到远端 git push origin <tag_name> // 将某个tag提交到远端 git push origin –tags // 将所有tag提交到远端 branch相关指令 git branch -d <branch_name> // 删除某个分支 git branch -D <branch_name> // 强制删除某个分支 git branch -avv // 查看本地分支与远端分支关系,并且显示分支最新一次提交信息 git remote show origin // 查看远端分支间关系

金角大王: https://www.cnblogs.com/alex3714/articles/5930846.html

廖雪峰:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000  

posted @ 2019-10-19 21:35  Crazy丶迷恋  阅读(143)  评论(0编辑  收藏  举报