• github中git bash基础命令行


    今天来讲一下关于github命令行相关知识。呵呵,其实github都没太明白就把git bash摆上来当道菜。看来,我有当程序员的天赋,让我再装一会。

    前提:你已经在github上已经注册了账号。

    特别注意: 括号内均为提示信息

    1、常用命令行工具:

      ①cmd     ②powershell      ③git bash

    2、命令行常用命令(在git bash上生效,部分在cmd无用)

        -pwd (print working directory) 查看当前所在路径--绝对路径

        -cd(change directory) 切换目标

        -ls(list) 查看当前目录下的内容

        -mkdir(make directory) 创建目录

        -touch 创建文件

        -cat 查看文件内容(一次性将内容全部显示)

        -less 查看文件内容(显示部分信息)--再次输入‘回车’一行一行显示,‘空格’一页一页显示 ,‘b’一次向上走一页

        -rm(remove) 删除文件,-rm -rf 文件夹(循环递进删除文件夹)

        -rmdir(remove directory)删除文件夹(只能删除空文件夹,不常用)

        -clear 清屏

        -q 退出

        -mv(move) 移动文件或重命名

        -cp(copy) 复制文件

        -echo ‘内容’ > 文件名 (输出内容到文件中,每次输入都是覆盖原来的文件)

        -echo ‘内容’ >>文件名(输出内容到文件中,每次输入都是追加新内容)

    3、Git介绍

         Git版本管理工具,有三大区域:

         ① 工作目录-----存放项目代码的目录

         ②暂存区-----存放工作中更改的文件,避免项目代码丢失。

         ③代码仓库-----当开发功能足够成为一个版本时,提交到仓库。其实就是将暂存区中代码复制一份存储到代码仓库中。

        

         Git常用命令

         ① 配置git用户名和密码

              git config  --global user.name sun

              git config  --global user.email  sun@qq.com

        ② 查看当前git的配置

              git config --list

         ③ 初始化git 仓库

              git init

         ④ 查看当前仓库的状态

              git status

          ⑤ 将工作目录中的文件添加到暂存区

              git add sun.html(这个命令上传一个文件)     git add  .(这个命令会将当前目标下所有文件上传)    git   add  a.txt  b.txt (如果上传多个,文件名之间用空格)

              题外话: 如果当前文件夹内文件很多,但是有些又不想提交。可以通过编辑器(sublime,webstorm等)或命令行创建一个文件 以.gitignore后缀,其内容写入不想提交的文件名即可。此时再通过git add .命令去全部提交时就会有选择提交。

          ⑥ 将暂存区中的代码提交到本地仓库,形成一个版本

              git  commit -m 备注(如果备注内容带空格,则需要加‘’)

           ⑦  查看本地仓库中的历史提交版本

              git  log

           ⑧  将暂存区中文件删除

               git  rm  --cached 文件名

           注意: 1、必须保证工作目录中代码和暂存区中代码一致。 2、删除之后,工作目录中仍然有此文件而暂存区没有。git不将管理该文件。

            ⑨  用暂存区中的文件覆盖工作目录中的文件

               git  checkout -- 文件名

            注意: 暂存区和工作目录中均有此文件,该文件依然被git管理

            ⑩ 回滚到本地仓库中特定版本并覆盖暂存区和工作目录

               git  reset --hard  commitID(commitID可以到git log中查看提交编号),有种方式:1、全部黏贴  2、只取前6位

          注意: 如果有版本1,版本2(后提交),当回滚到版本1时版本2会被自动删除。

      图示:

        

      

      

    分支相关命令:

        ① 查看分支  

                git  branch (显示结果中 有* 代表当前所在分支)

        ②  创建分支

                git  branch 分支名称

         ③  切换分支  

               git  checkout 分支名称

         ④  创建并切换分支 

              git  checkout -b 分支名称

         ⑤ 删除分支 (如果分支没有被合并不允许删除)

             git  branch -d 分支名称

         ⑥  删除分支(强制删除分支)

             git  branch  -D 分支名称

          ⑦  合并分支

            git  merge 来源分支(意思:当前目录到主分支,将来源分支合并到主分支上。合并后来源分支仍然存在)

      

        

    4、github 相关命令介绍

         4.1 模拟一个公共代码仓库

               ①先初始化   git  init --bare  sun.git (注意:此时公共代码仓库的文件夹必须以.git为后缀名)

          4.2  github仓库

               ① 为远程仓库地址创建别名

                  git  remote add origin  https://github.com/sun766/Programming-art.git(此处举例)

                注意: 通常我们会把远程仓库地址设置别名为origin

               ② 查看远程地址的详细信息

                 git  remote -v

               ③ 查看当前别名所对应的远程仓库地址

                 git  remote show origin

                ④ 从远程仓库获取代码(拉取所有版本到本地)

                 git clone  origin 

                 注意: 加入到已有项目的开发中,需要先拉取所有版本到本地再进行开发。

                ⑤ 从远程仓库拉取代码(拉取最新版本到本地,开发过程中使用)

                 git pull origin master

                  面试题: 说出clone 和 pull 之间区别

                ⑥向远程仓库推送代码

                 git  push origin(远程仓库地址)   master(本地分支名称):master(远程分支名称)

               注意: 推送时一定要在本地代码仓库目录中,如果本地分支同远程分支名称一样,可以只写一个。

                ⑦ 删除当前别名所对应的远程仓库地址

                  git  remote remove origin 

                记住: 如果你想重新使用origin 别名,则需要将原来的origin 对应远程地址删除掉。

                

      ‘’多人协作开发免登录设置”

       当不想使用账户和密码进行推送代码时,建议使用SSH协议。

         在git bash 中输入ssh-keygen,   自动会在c:/用户/administrator/中生成.ssh文件。其包括三个文件

           ① id_rsa   ②  id_rsa.pub    ③ known_hosts

          在github账号中settings/SSH and GPG keys,点击New SSH key将②中内容复制粘贴。

          注意: 设置别名时用SSH路径。

  • 相关阅读:
    关于获取系统平台下的根目录名,分隔符等等
    AlineTransform 的应用
    网上书店例子(JSP和JavaBean)
    在Servlet中实现永久计数器思想
    关于TOmcat的一些小小的知识
    Java 编程基础,应用与实例
    日历类显示多一行
    使用UPnP连接远程交易服务(翻译)
    涂鸦板代码
    网站
  • 原文地址:https://www.cnblogs.com/WangXinPeng/p/8016293.html
Copyright © 2020-2023  润新知