首页 > 代码库 > git使用(上)------基本的方法

git使用(上)------基本的方法

  1. git应该是一项必须要掌握的工具.先简述它和SVN的区别
    • SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,如果在局域网还可以,带宽够大,速度够快,如果在互联网下,如果网速慢的话,就纳闷了.
    • Git是分布式版本控制系统,那么它就没有中央服务器的,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上.既然每个人的电脑都有一个完整的版本库,那多个人如何协作呢?比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了.
  2. 配置文件  
    • 查看配置的方法
      • 1 git config --list
    • 用户名和邮箱地址的作用
      • 用户名和邮箱地址是本地Git客户端的一个变量,不随git库而改变。
      • 每次commit都会用用户名和邮箱纪录。
      • github的contributions统计就是按邮箱来统计的。
      • 查看用户名和邮箱地址:
        1 git config user.name
        2 git config user.email
      • 修改用户名和邮箱地址:
      • 1 git config --global user.name "username"
        2 git config --global user.email "email"
            
  3. 基本使用
    1. git中文件的各个状态
      • unstaged - git仓库中没有此文件的相关记录
      • modified - git仓库中有这个文件的记录,并且此文件当前有改动
      • staged - 追加,删除或修改的文件被暂时保存,这些追加,删除和修改并没有提交到git仓库 -------暂存区
      • commited - 追加或修改的文件被提交到本地git仓库(git仓库中大部分都是这种文件,所以git status不显示这些文件)-----仓库
      • 技术分享

         

    2. 初始化一个仓库 :   git init (当前文件夹下生成.git目录,完成初始化,此时此文件夹下的所有文件处于unstaged状态)
    3. 追加文件
      • 1 git add filename # 将工作文件修改提交到本地暂存区
        2 git add . # 将所有修改过的工作文件提交暂存区 
    4. 提交到版本库
      •   
        1 git commit -m "your_index"
    5. 管理修改
      • 要随时掌握工作区的状态,使用git status命令。
      • 如果git status告诉你有文件被修改过,用git diff可以查看修改内容。
    6. 撤销修改
      • 放弃工作区的修改------让这个文件回到最近一次git commit或git add时的状态。已经添加到暂存区的执行后恢复到添加到暂存区的状态
        1 git checkout -- filename
      • 将暂存区的修改撤销掉--------执行完后记得工作区的修改并未执行,应该继续按上一条命令修改工作区
        1 git reset HEAD filename 
    7. 删除文件
      • 误删了工作区的文件
        • git status命令会立刻告诉你哪些文件被删除了,接着使用
          1 git checkout -- filename  
        • git checkout其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”
      • 确实要删除文件. 版本库中删除该文件,那就用命令删掉,并且git commit:
        1 git rm <filename>
        2 git commit -m "your_index"
            
    8.  版本回退
      • 回退回上一个版本
        1 git reset --hard HEAD^
      • 在Git中,用HEAD表示当前版本,也就是最新的提交3,上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100. 
      • 另一种方法是使用commit id.  使用命令    git log  查看历史记录 , 获取前面的一大串类似3628164...882e1e0的是commit id(版本号)
      • 使用命令进行任意版本的切换
        1 git reset --hard commit_id
      • 穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。
      • 要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本
    9. 远程仓库
      • 由于你的本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以需要进行设置
      • 创建SSHkey
      •      
    10.   
  4. 远程仓库
  5. 分支管理

git使用(上)------基本的方法