• git基本使用方法


    1、生成sshkey

    ssh-keygen -t rsa -C "youremail@example.com"

    2、设置默认提交的用户名和邮箱

    git config --global user.email "you@example.com"
    git config --global user.name "Your Name"

    3、初始化本地文件夹为git仓库

    git init

    4、克隆一个代码库:

    git clone url

    5、增加暂存区(.可以改为相应的文件):

    git add .

    6、提交信息

    git commit  -m  "提交信息"

    7、提交更改

    git push

    8、更新本地代码库

    git pull url

    git clone和git pull有区别,新建代码库要用git clone会自动初始化文件夹为一个代码库(添加.git文件)

    使用的url时http和ssh时不同,http时会弹出窗口要输入github账号密码,ssh时可以用key而免去输入账号密码

    9、本地删除文件后从远程同步回来

    #单个文件
    git checkout a.php
    #当前目录
    git checkout .

     10、创建并切换分支

    git checkout -b dev

    git checkout命令加上-b参数表示创建并切换。即创建dev分支,并把当前分支切换为dev。相当于下面两条命令:

    git branch dev
    git checkout dev

    11、分支操作

    查看本地分支:git branch
    查看远程分支:git branch -r
    查看所有分支:git branch -a
    删除本地分支:git branch -d xxxxx
    新建远程分支:git push origin 本地分支名:远程分支名
    删除远程分支:git push origin :远程分支名(push空分支相当于删除远程分支)
    删除远程分支:git push origin --delete 远程分支名

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

    12、关联/取消关联远程仓库

    关联

    git remote add origin git@github.com:roadwide/gitstudy.git

    取消关联

    git remote remove origin

    git remote可以查看关联的远程仓库。从这里我明白了远程主机名之所以是origin是因为我将他命名为了origin,并且默认规则就是这样(直接clone也是origin

    关联操作可以是本地git init之后再和远程仓库关联。和git clone不同,git clone是直接将远程仓库下载到本地,同时完成了下载文件和初始化为git仓库的操作;而git init只将本地文件夹初始化为git仓库,后续还需要再关联远程仓库。

    在git init之后可以使用

    git pull origin master

    将远程仓库pull到本地。这个命令实际上完成了在本地创建master分支并将远程仓库文件下载下来。

    如上,git pull命令的格式是:git pull 远程主机名 远程分支名

    另外在学习过程中发现,git init之后本地仓库并没有任何分支,只有在添加文件并且commit之后才会出现master分支。如果git init初始化,然后自己添加文件并commit,再次使用git pull某个分支的时候会出现错误提示“fatal: refusing to merge unrelated histories”,意思拒绝合并来路不明的分支,是服务器感觉可能是开发者弄错了,所以拒绝,如果要强制合并,需要加参数--allow-unrelated-histories

    13、git push命令

    git push <远程主机名> <本地分支名>:<远程分支名>

    远程主机名默认叫origin。之所以能直接git push而不设置后面的参数,是因为远程仓库和本地仓库之间的某种绑定。

    git push --set-upstream origin aaa

    其中origin是远程主机名,aaa是远程分支名

    14、新建一个不继承任何节点的分支

    git checkout --orphan doc

    该例子中分支名为doc

  • 相关阅读:
    再谈CLR:值类型按照引用传递(以及与装箱拆箱的区别)
    Silverlight的跨站策略和跨站策略文件
    再谈CLR:MSCorEE.dll文件的奥秘
    再谈CLR:如何通过代码获取程序集所引用的程序集信息
    再谈方法的动态调用
    Silverlight隔离存储(续)
    支持取消操作和暂停操作的Backgroundworker
    单件模式(Singleton)和锁定(lock)
    在SharePoint服务器中执行备份和还原
    如何:将 TraceSource 和筛选器与跟踪侦听器一起使用(转载)
  • 原文地址:https://www.cnblogs.com/roadwide/p/9525418.html
Copyright © 2020-2023  润新知