16年4月21号:Git版本控制工具的使用

   Git的基本概念:开源的分布式版本管理工具,可以用来跟踪、记录你的代码工作,为个人的开发及团队协作提供便利。它的第一个特点就是跟踪、记录代码。

   现在介绍Git中的基本概念:

   仓库:在Git中,我们将需要进行版本控制和管理的文件目录叫做仓库(repository),每个仓库可以简单理解成一个目录,这个目录里面的所有文件都通过Git来实现版本管理,Git都能跟踪并记录在该目录中发生的所有更新。也就是所,我们对仓库中的文件进行的所有操作,它都可以帮我们自动记录,且我们可以随时将任意文件返回到以前的某个状态。我们是通过add 和 commit命令来想仓库中添加文件和文件夹的。
   现在我们已经知道什么是repository了,假如我们现在建立一个仓库(repo),那么在建立仓库的这个目录中有一个“.git”的文件夹。这个文件夹非常重要,所有的版本信息,更新记录,以及Git进行仓库管理的相关信息全部保存在这个文件夹里面。所以,不要修改/删除其中的文件,以免造成数据的丢失。

   分支:分支的理念就是分身,就像是一个软件的第一版和第二版,内容不同,但有很多其它的相同之处。有时仓库中的许多文件或文件名的名称一样,但它们的内容却不一样,这时我们就可以建立不同的分支来管理它们了。分支是Git版本控制中的核心概念。

   本地仓库:在本地计算机上创建的仓库。我们可以将一个项目的子目录建立成一个仓库。

   远程仓库:在网络中储存的文件内容,我们可以把它想象成一个网络云盘,一般我们将一个本地仓库和远程仓库关联后,远程仓库就可以储存我们在本地中所进行的所有修改。一般我们会在Github上托管代码,在Github上建立一个远程仓库,并与本地仓库相关联。



    Git的基本工作流程。
        第1步:修改文件的工作目录。
        第2步:将这些文件添加到暂存区
        第3步:执行commit操作。这将文件从临时区域。推送操作后,它永久地存储更改的Git仓库

   要使用Git,我们必须先安装一个Git软件,要使用远程仓库还建议在Github社区上注册一个账号。Git中的所有操作都可以通过命令行进行。安装好Git后,我们右键单击Git Bash,先输入以下命令,配置一下用户:
            git config --global user.name = "brooklee"
            git config --global user.email = "[email protected]"
   我们也可以对不同的本地仓库配置不同的用户。

   接下来是新建本地仓库:在需要建立仓库的文件夹的根目录下,单击右键并单击Git Bash调出Git命令行,输入以下命令即可新建仓库:
      git init

   将文件提交到仓库中:
         git add 文件名:将文件添加到缓冲区
         git commit 将缓冲区中的所有文件都添加到仓库中



   Git常用命令:

        mkdir:         XX (创建一个空目录 XX指目录名)
        pwd:          显示当前目录的路径。
        git help   # 显示某条命令的帮助

  Git配置:

        git config --global user.name "brooklee"  #配置使用git仓库的人员姓名

        git config --global user.email "[email protected]"  #配置使用git仓库的人员email

        git config --global credential.helper cache #配置到缓存 默认15分钟 
        git config --global credential.helper 'cache --timeout=3600'  #修改缓存时间

        git config -l #列举所有配置

  对仓库的操作:

        git init #初始化一个版本仓库
        git clone [email protected]:wordpress.git   #Clone远程版本库
        git remote add origin [email protected]:wordpress.git  # 添加远程版本库origin,语法为 git remote add [shortname] [url]
        git remote -v  #查看远程仓库

  对仓库目录下的文件的基本操作:

        git show            # 显示某次提交的内容
        git show $id

        git add       # 将工作文件修改提交到本地暂存区
        git add .           # 将所有修改过的工作文件提交暂存区

        git rm        # 从版本库中删除文件
        git rm  --cached  # 从版本库中删除文件,但不删除文件

        git reset     # 从暂存区恢复到工作文件
        git reset -- .      # 从暂存区恢复到工作文件
        git reset --hard    # 恢复最近一次提交过的状态,即放弃上次提交后的所有本次修改

        git ci 
        git ci .
        git ci -a           # 将git add, git rm和git ci等操作都合并在一起做
        git ci -am "some comments"
        git ci --amend      # 修改最后一次提交记录

        git revert <$id>    # 恢复某次提交的状态,恢复动作本身也创建了一次提交对象
        git revert HEAD     # 恢复最后一次提交的状态

  查看记录:
        git log       # 查看该文件每次提交记录
        git log -p    # 查看每次详细修改内容的diff
        git log -p -2       # 查看最近两次详细修改内容的diff
        git log --stat      #查看提交统计信息

  查看异同:
           git diff      # 比较当前文件和暂存区文件差异
           git diff <$id1> <$id2>   # 比较两次提交之间的差异
           git diff .. # 在两个分支之间比较
           git diff --staged   # 比较暂存区和版本库差异
           git diff --cached   # 比较暂存区和版本库差异
           git diff --stat     # 仅仅比较统计信息

  分支操作:
        git branch iss53  #创建一个分支
        git chekcout iss53 #切换工作目录到iss53
        git chekcout –b iss53 #将上面的命令合在一起,创建iss53分支并切换到iss53 
        git merge iss53 #合并iss53分支,当前工作目录为master
        git branch –d iss53 #合并完成后,没有出现冲突,删除iss53分支

        git branch -r           # 查看远程分支
        git branch -v           # 查看各个分支最后提交信息
        git branch --merged     # 查看已经被合并到当前分支的分支
        git branch --no-merged  # 查看尚未被合并到当前分支的分支
        git branch -d   # 删除某个分支
        git branch -D   # 强制删除某个分支 (未被合并的分支被删除的时候需要强制)

   管理远程仓库:
        git remote -v                    # 查看远程服务器地址和仓库名称
        git remote show origin           # 查看远程服务器仓库状态
        git remote add origin git@ github:robbin/robbin_site.git         # 添加远程仓库地址
        git remote set-url origin git@ github.com:robbin/robbin_site.git # 设置远程仓库地址(用于修改远程仓库地址)
        git remote rm        # 删除远程仓库

        git clone --bare robbin_site robbin_site.git  # 用带版本的项目创建纯版本仓库
        git remote add origin git@ github.com:robbin/robbin_site.git    # 设置远程仓库地址
        git push -u origin master   # 客户端首次提交
        git push -u origin develop  # 首次将本地develop分支提交到远程develop分支,并且track
        git remote set-head origin master   # 设置远程仓库的HEAD指向master分支

个人微信公众号:猿聚于此
个人CSDN博客:任我行吧
个人Github:https://github.com/brooklee145
欢迎大家关注,文章欢迎转载,转载请注明出处。

你可能感兴趣的:(个人,git,版本控制工具,版本控制,管理)