Git常用命令记录

 

1. 从git远程仓库导出项目

  首先下载git工具:https://www.git-scm.com/download,git仓库可以使用github,coding,码云等开源网站申请账号即可免费试用

  下载并安装git,安装成功后桌面会出现Git Bash工具,如图

  

  双击Git Bash进入类似linux的命令行界面

  

 

  我们首先输入 cd e:  进入e盘,然后 输入 mkdir git-demo 创建一个文件夹用来存放从git仓库导出的文件, cd git-demo 进入创建好的目录

  然后通过git的clone命令将项目导入本地,命令如下:

  git clone [-b 远程分支名] [git-remote-url] [本地文件名]

  最简单的命令是 git clone [git-remote-url] , git-remote-url 是远程git仓库的地址;-b 远程分支名 可以导出远程仓库中指定分支的文件,若不写默认导出master分支;是导入本地后的文件(项目)名称,如不写默认和git仓库名称一致,如执行:git clone -b dev https://git.dev.tencent.com/DespacitoYo/test.git test ,结果如图所示

  

   cd test 进入从git远程仓库导出的文件, ls -a 查看所有文件,可以看出git clone导出的文件自动在本地创建了仓库, .git文件夹下包含了所有git相关配置信息

  通过执行 git branch -a 命令可以查看当前所有的本地及远程分支,绿色代表本地,红色代表远程,前面有*号的代表当前分支,如图可以看出当前分支为dev,若执行git clone命令时不加-b dev,则默认为master分支,远程分支有master和dev两个,origin/HEAD指向origin/master,表示origin/master是默认分支

   

  执行 git remote -v 可以查看当前远程仓库地址,如图,origin是远程仓库的名称,可以通过 git remote set-url origin [new-url] 来改变远程仓库地址

  

  也可以通过 git remote rename old-name new-name 来修改远程仓库名称,但不建议修改,一般一个仓库只对应一个地址,无需进行修改,使用默认名称以免忘记

  

  使用 cat a.txt 查看测试文件的内容:

  

2. 从本地提交到远程仓库

  通过 vi a.txt 命令可以进入文件的命令模式(vi命令的两种模式之一),进入编辑模式按下 键或者 键即可,

   

  下面即可修改文本内容了,修改完成后按下ESC键退出编辑模式,进入命令模式,然后输入 :wq ,回车即可保存文件

  

  再使用 cat a.txt 命令查看文件内容,可以看到文件已经被修改成功

  

  修改过后需要同步到远程仓库,那么如何提交呢?git分为工作区,暂存区,本地仓库和远程仓库,刚才修改的工作区的文件,想要同步到远程仓库需要先把文件放到暂存区,再把暂存区的文件提交到本地仓库,再从本地仓库同步到远程仓库

  git add . 命令可以将工作区的所有文件放入暂存区,"."表示所有文件,也可以指定文件如 git add a.txt

  git commit -m 'commit info' 命令可以将暂存区的文件提交到本地仓库

  git commit -am 'commit info' 则相当于 上面两个命令的结合(经过测试,有时候会出现提交失败的情况,这时还是需要先 git add . ),如图

   

  最后输入 git push 即可完成工作区->暂存区->本地仓库->远程仓库的提交,由于是从git远程仓库clone出来的项目,所有直接git push即可,否则需要使用 git clone -u [远程仓库名] [当前分支]

  

  提交后查看git仓库,可以到看a.txt的内容已经同步成功

  

3. 从远程仓库获取更新

  常用的提交命令已经清楚了,那么如何从git远程仓库更新到本地呢?我们先直接修改远程仓库中a.txt的内容如下:

  

   我们可以使用 git fetch [远程仓库名/远程仓库地址] [远程分支] 来把远程仓库指定分支的更新取回本地仓库,若是直接git fetch则会把所有远程分支的更新同步到本地仓库;但是这时工作区还未更新,继续使用 git merge [远程仓库名]/[远程分支] 来把本地仓库更新的内容合并到工作区,如:

  

  

  再次查看a.txt的内容,可以看到已经更新成功。当然,以上步骤可以用 git pull 代替,git pull 相当于以上命令的结合,获取远程仓库的更新并合并。不过在实际使用中,git fetch 更安全一些。

  

 

  

posted @ 2019-01-08 10:16  DespacitoYo  阅读(306)  评论(0)    收藏  举报