git

基本命令:

    git init

    git status             查看当前文件夹的状态。
    git add 文件名        对指定文件进行版本控制
    git add .            对指定文件夹下的所有文件及子目录进行版本控制
    git commit -m '详细的描述信息' 创建提交记录(版本)

    git log   # 查看提交记录
    git reflog  # 查看所有的提交记录

    git reset --hard 版本号(提交记录)   # 回滚到之前的某一个版本

branch:

    git branch                查看分支
    git branch 分支名称       创建分支
    git checkout 分支名称     切换分支
    git branch -m 分支名称    创建并切换到指定分支
    git branch                查看所有分支
    git branch -d 分支名称    删除分支
    git merge 分支名称        将指定分支合并到当前分支

提交到github:

    提交代码
        git remote add origin(url别名) https://...
        git push origin dev(分支)
    拉代码
        整个目录下载到当前目录:
            git clone https://...
        进入目录:
            cd test/
下载指定分支:
       git clone -b 分支名 http...
修改后再次提交: 先在本地add commit git push origin dev(分支名)

        clone默认只下载master分支,下载其它分支:
            本地创建同名分支:git branch dev
                              git checkout dev
            下载分支:
                git pull origin dev  # 等于以下两条
                    git fetch origin dev
                    git merge origin/dev  # 会分叉  / git rebase origin/dev  # 不会分叉,保持提交记录的整洁

                git pull origin master
                    git fetch origin master
                    git merge origin/master
View Code
创建版本:

    git tag -a v1.0 -m '版本介绍'        本地创建Tag
        git show v1.0                       查看
        git tags -n                         查看本地Tag
        git tag -l 'v1.4.2.*'               查看本地Tag,模糊匹配
        git tag -d v1.0                     删除Tag
        git push origin :refs/tags/v0.2     更新远程tag
        git checkout v.10                   切换tag
        git fetch origin tag V1.2

    git push origin  --tags

    git pull origin  --tags

    git clone -b v0.1  # 拉指定版本

SSH:

    Https:
        https://用户名:密码@(git地址)
    SSH:
        生成ssh密钥:(git bush)
           1、ssh-keygen.exe 回车回车回车
             会生成一个文件/c/Users/dell/.ssh/id_rsa
           2、cd C:
              cd ~/.ssh/
              cat id_rsa.pub
              生成公钥,添加到git的设置
在本地有多次commit时,清楚之前多余的版本,只保留最后一个:

git log     查看版本号,找到初次提交之前的版本号xxx

git reset xxx   回到版本

git add .

git commit -m '    '

git push -f     强制提交,清楚xxx之后的提交记录

================================================

git clone (-b 分支名)  git地址   -->如果不指定分支则默认下载master分支

git remote -v     --> 查看远程仓库
git remote add 名字 git地址  --> 添加远程仓库到本地

====================================



git fetch 仓库名  远程分支:本地分支  --> 指定远程仓库的指定分支拉到本地并新建分支
git checkout 本地分支

git cherry-pick  版本号    --> 把指定版本合并到当前分支

======================
在push之前
git rebase 仓库名/分支名  --> 检查当前分支是否与目标分支存在冲突


git push 仓库名 本地分支:远程分支 


=========================================

在本地有多次commit时,清除之前多余的版本,只保留最后一个:

git log     查看版本号,找到初次提交之前的版本号xxx

git reset xxx   回到版本

git add .

git commit -m '    '

git push -f 仓库名 本地分支:远程分支         强制提交,清除xxx之后的提交记录

 修改MR:

提交MR之后,如果想修改的话,在本地修改之后
git add . 
git commit --amend
然后会进入vim,退出
git push -f 

添加远程仓库,并更新自己仓库

git remote add center 源代码地址
git fetch center
git rebase center/develop

 git bash  用户名设置

$ git config --global user.name "your_name"
$ git config --global user.email "your_email@youremail.com"

n

原文地址:https://www.cnblogs.com/webc/p/9512417.html