git命令

1.git全局设置

git config --global user.name "Your Name"
git config --global user.email "email@example.com"

2.创建版本库

初始化一个Git仓库,使用 git init 命令。

添加文件到Git仓库,分两步:

  • 第一步,使用命令 git add <file> ,注意,可反复多次使用,添加多个文件;

  • 第二步,使用命令 git commit ,完成。

3.版本控制

  • HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令 git reset --hard commit_id 

  • 穿梭前,用 git log 可以查看提交历史,以便确定要回退到哪个版本。

  • 要重返未来,用 git reflog 查看命令历史,以便确定要回到未来的哪个版本。

  • 场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令 git checkout -- file 

    场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令 git reset HEAD file ,就回到了场景1,第二步按场景1操作。

    场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本控制第一步,不过前提是没有推送到远程库。

4.远程仓库

  生成ssh密钥

ssh-keygen -t rsa -C "youremail@example.com"

  在远程仓库如github-帐户设置-ssh公钥管理-添加自己的公钥(默认生成在C:UsersAdministrator.ssh,id_rsa是私钥,id_rsa.pub是公钥)

  在本地仓库下:

git remote add origin git@github.com:cloudebug/gitest.git

    origin:远程库的名字,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程

    git@github.com:远程仓库地址,Git支持多种协议,包括https,但通过ssh支持的原生git协议速度最快。

    cloudebug/gitest.git:用户名/仓库名.git

   下一步,就可以把本地库的所有内容推送到远程库上:

git push -u origin master   

    把本地库的内容推送到远程,用 git push 命令,实际上是把当前分支master推送到远程。

由于远程库是空的,我们第一次推送master分支时,加上了 -u 参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。(第一次推送,如果远程不空,如有README.md,将会报错“Non-fast-forward”)

 5.克隆远程仓库

git clone git@github.com:cloudebug/cloudebug.git

 6.分支

  查看分支: git branch 

  创建分支: git branch <name> 

  切换分支: git checkout <name> 

  创建+切换分支: git checkout -b <name> 

  合并某分支到当前分支: git merge <name> 

  删除分支: git branch -d <name> 

  当Git无法自动合并分支时,就必须首先解决冲突。解决冲突后,再提交。用 git log --graph --pretty=oneline --abbrev-commit 命令可以看到分支合并图。

    --graph:查看分支合并图

    --pretty=oneline:--pretty 是使用其他格式显示,可用的选项包括 oneline,short,full,fuller 和 format(后跟指定格式)。 限制输出长度。

    --abbrev-commit:截断提交号,只显示前几位

出错:

1.Non-fast-forward

出现原因:git仓库中已经有一部分代码,所以它不允许你直接把你的代码覆盖上去。于是你有2个选择方式:

  1,强推,即利用强覆盖方式用你本地的代码替代git仓库内的内容

git push -f

  2,先把git的东西fetch到你本地然后merge后再push

git fetch
git merge

  这2句命令等价于

git pull
原文地址:https://www.cnblogs.com/tswcypy/p/4481060.html