Git常用命令学习
GIT安装:
1. Git下载地址:https://git-for-windows.github.io/,按照默认选项安装即可。
(安装完成后,在开始菜单找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功!)
2. 安装完成后,还需要最后一步设置,在命令行输入:
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
因为Git是分布式版本控制系统,所以,每个机器都必须自报家门:你的名字和Email地址。
3. Git常用方法
3.1 选择合适的地方,创建一个空目录,这里假设为learngit
$ mkdir learngit
$ cd learngit
$ pwd
/Users/michael/learngit
pwd命令用于显示当前目录。
注意:如果你使用Windows系统,为了避免遇到各种莫名其妙的问题,请确保目录名(包括父目录)不包含中文。
3.2 通过git init命令把这个目录变成Git可以管理的仓库:
$ git init
Initialized empty Git repository in /Users/michael/learngit/.git/
(注意:当前目录下多了一个.git的目录,这个目录是Git来跟踪管理版本库的,没事千万不要手动修改这个目录里面的文件,不然改乱了,就把Git仓库给破坏了。)
(提示:不一定必须在空目录下创建Git仓库,选择一个已经有东西的目录也是可以的)
3.3 添加文件到Git仓库
现在我们编写一个readme.txt文件,内容如下:
Git is a version control system.
Git is free software.
(注意:一定要放到learngit目录下(子目录也行),因为这是一个Git仓库,放到其他地方Git找不到这个文件)
把一个文件放到Git仓库只需要以下两步:
第一步:用命令git add告诉Git,把文件添加到仓库(提示:执行下面的命令,没有任何显示,说明添加成功。add命令可以反复多次使用)
$ git add readme.txt
第二步:用命令git commit告诉Git,把文件提交到仓库:
$ git commit -m "wrote a readme file"
[master (root-commit) cb926e7] wrote a readme file
1 file changed, 2 insertions(+)
create mode 100644 readme.txt
(提示:git commit命令,-m后面输入的是本次提交的说明,可以输入任意内容,当然最好是有意义的,这样你就能从历史记录里方便地找到改动记录)
为方便理解以上命令,这里给出工作区和暂存区的概念:
Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念。
工作区(Working Directory):就是你在电脑里能看到的目录,比如我的learngit文件夹就是一个工作区
版本库(Repository):工作区有一个隐藏目录“.git”,这个不算工作区,而是Git的版本库
Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。如下图所示:
前面讲了我们把文件往Git版本库里添加的时候,是分两步执行的:
第一步:用“git add”把文件添加进去,实际上就是把文件修改添加到暂存区;
第二步:用“git commit”提交更改,实际上就是把暂存区的所有内容提交到当前分支。
因为我们创建Git版本库时,Git自动为我们创建了唯一一个master分支,所以,现在,commit就是往master分支上提交更改。可以简单理解为,需要提交的文件修改通通放到暂存区,然后,一次性提交暂存区的所有修改。
添加远程库
现在的情景是,已经在本地创建了一个Git仓库后,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作。
3.1 登陆GitHub,然后,在右上角找到“Create a new repo”按钮,创建一个新的仓库
3.2 在Repository name填入learngit,其他保持默认设置,点击“Create repository”按钮,就成功地创建了一个新的Git仓库。出现如下图所示页面:
git remote add origin https://github.com/lezhifang/learngit.git 使用该命令前需要切换到本地仓库目录,该命令将本地仓库与远程仓库相关联
git push -u origin master 该命令是将之前提交到本地库的内容推送到远程库中,git push命令实际是把当前分支master推送到远程。
(提示:由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令)
好了 按以上要求操作就可以~~~~(后续更新)
参考加推荐:Git教程By廖雪峰