zoukankan      html  css  js  c++  java
  • git基本使用

    一、 安装git

      下载git:https://git-scm.com/download/win

    二、使用git

      1、打开已经安装好的git

                                 

       2、设置用户名以及邮箱作为唯一标识

            

    git config --global user.name "HardyKay"
    git config --global  user.email "hardykay@126.com"

                            

      3、项目管理

        在D:/code/新建一个叫gitproject项目

                       

        4、并在git新建一个index.html,随便写点东西

            

        5、进入到项目目录,执行git init 

                                  

        6、创建成功的话,在gitproject下面会有.git的隐藏文件

                               

        7、执行git status,会看见红色的index.html,这是说明我们这个文件已经做了修改,但是还没保存到本地仓库里面。现在我们接着执行操作 git add  index.html  敲完这个命令接着git status发现index.html变成绿色的啦。

                              

        8、执行 git add index.html,再执行 git status,可以看到index.html已经变成绿色。

                             

        9、我们接着执行    git commit   -m  “这是修改说明”  提交到本地仓库。

                             

        10、我现在说明一下,大体的工作流程:一共是三部分组成,如图,工作区是我们写代码的地方,暂存区还有本地仓库都在.git文件夹里面,这也是提交到github所必需的。

        

        11、版本退回

          改修一下index.html文件再提交一次,

             

           

          再修改一下index.html文件

          

          现在要退回到第一次修改,执行git log 或者 git log --pretty=oneline 看一下。一共两次修改。

          

          执行     git reset –-hard HEAD^。

           

          再看index.html文件,回到了第一次。

           

          怎么回到新版呢?执行 git reflog,

            

          执行 git reset --hard 3b403e6,可以执行其他,想回到那个就会到那个。

             

              

          12、删除文件

       现在我们在gitproject目录下新建一个文件叫test.txt。我们在里面随便写几个字之后,通过git add text.txt 已经git commit –m “说明”就已经把test.txt已经写入本地库里了。

       假设现在我们发现我们已经不需要test.txt这个文件了,所以我们把它给删了。这个时候你通过git status发现工作区和本地库里的文件不一样了。

          现在我们有两种选择,一种是我们确实要删除。使用git rm test.txt 之后再git commit –m “remve test.txt”发现我们的本地库里的文件已经被删除了。那么另外一种情况就是我删错了,我想还原回来怎么办呢,使用命令git checkout – test.txt就发现这个文件已经还原了

    三、远程仓库

       1、执行 ssh-keygen -t rsa -C 邮箱   。文件在c盘,一会用到。

        

      2、登录github

        点击settings

                                             ,,    

          点击ssh keys,

                                

           将/c/Users/lenovo/.ssh/id_rsa.pub.文件内容填入到New ssh key当中。

                                             

              

       3、创建仓库

          

      

          注意:这是使用说明。建议新手保存一下

                           

        4、执行git remote add origin git@github.com:HardyKay/gitproject.git        HardyKay是你的用户名,gitproject是库名称,也可以执行git remote add origin https://github.com/hardykay/gitproject.git

        

        5、执行git push -u origin master,提交。

        

         刷新页面可以看到,库更新了

      

      6、分支管理

      分支在实际中有什么用呢?假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了。如果等代码全部写完再一次提交,又存在丢失每天进度的巨大风险。

         现在有了分支,就不用怕了。你创建了一个属于你自己的分支,别人看不到,还继续在原来的分支上正常工作,而你在自己的分支上干活,想提交就提交,直到开发完毕后,再一次性合并到原来的分支上,这样,既安全,又不影响别人工作。

      首先我来创建一个分支

        执行命令git checkout -b dev 这样就创建好了一个dev分支。

              

      

      我们来介绍一下,最开始的时候我们的所有操作都是默认在一个叫做master的分支上操作的,包括提交到远程库,等等。关联远程库的时候也是从远程关联master分支。当我们用dev这个分支写完一个项目之后,我们要把这个分支所做的工作向master分支进行靠拢.

      我们现在可以通过命令git branch来查看一下所有的分支。

      git branch命令会列出所有分支,当前分支前面会标一个*号。

      然后,我们就可以在dev分支上正常提交,比如对index.html做个修改,加上一行

                                          

      然后我们执行git add index.html以及 git commit –m “dev第一次修改”

      现在我dev的分支工作已经做完,现在我可以切换回master分支。利用命令

      git  checkout master

           切换回master分支之后,我们发现index.html里面我们新加的那句话不在了。因为我们刚才是在dev分支上做的提交。现在我们要把分支合到master上,就利用命令git merge dev就可以了,此时再去查看index.html发现我们在dev里面做的操作已经在master里面了。现在我们可以使用命令git branch –d dev来删除dev这个分支,之后再使用git branch来查看分支发现只有master一个分支了。因为创建、合并和删除分支非常快,所以Git鼓励你使用分支完成某个任务,合并后再删掉分支,这和直接在master分支上工作效果是一样的,但过程更安全。

      7、从远程库克隆

        重新打开git

                        

        执行git clone git@github.com:HardyKay/gitproject.git,克隆成功

        

       

     参考自:https://www.cnblogs.com/my-freedom/p/5701427.html

          

  • 相关阅读:
    Creating a generic Web Parts for hosting ASP.NET User Controls
    Speed Up SQL Server Apps 提高SQL Server应用程序的运行效率 (Part 1)
    How to use CreateChildContorls method inherited from System.Web.UI.Control
    How to quickly access Web Part Management Page
    SQL Script tips for MS SQL Server
    How to enable single signon service on the SPS
    A brief summary of UML & Rational Rose – Use Case Diagram, Part II
    Borland Together for Visual Studio.Net V2.0 安装问题
    Speed Up SQL Server Apps 提高SQL Server应用程序的运行效率 (Part 2)
    体验ReSharper V1.0 for VS.Net 2003 Part I
  • 原文地址:https://www.cnblogs.com/hardykay/p/10162666.html
Copyright © 2011-2022 走看看