zoukankan      html  css  js  c++  java
  • github与git常用的一些基本配置与命令

    首次Git设置:
    ssh-keygen -t ras -C "email@xxx" 生成SSH (共钥)将生成的SSH key复制到文本框中即可(title默认为邮箱名)

    你的身份(只需执行一次,因为Git将始终将该信息用于在该系统上执行的任何操作)
     git config --global user.name "John Doe"
     git config --global user.email johndoe@example.com
    检查您的设置
    git config --list 命令列出Git在此时可以找到的所有设置

    git help config 获取命令的帮助页帮助

    新建本地仓库步骤:这么通俗易懂看不懂我也没办法帮你了!!

    cd c:/d:/e:/f:/g:进入对应的磁盘

    mkdir gitTest 创建工作空间(也就是一个文件夹名字)

    cd gitTest 进入工作空间

    git init 初始化仓库(意思就是,初始化之后,这个目录里面的文件就能用Git进行各种管理了)
    在此空间上新建一个test.text(名字随意)文档里面随便写点东西
    git add test.text 提交新建好的TXT文件

    git commit -m "提交备注信息"

    git remote add origin git@github.com:1079161148/lhl.git (黑色是自己github账户名)

    git push -u origin master 把本地库的所有内容推送到远程库上,由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来。

    推送成功后,在github页面上刷新,可以看到GitHub页面的内容已经和本地一模一样,而且从现在起,只要本地作了提交,就可以通过命令"git push origin master"把本地master分支的最新修改推送至GitHub。

    --------------------------------------------------------------------------------------------------------------------

    登陆GitHub,然后,在右上角找到“Create a new repo”按钮,创建一个新的仓库!!!

    --------------------------------------------------------------------------------------------------------------------

    git checkout -b dev 创建分支并且切换到该分支

    git checkout命令加上-b参数表示创建并切换,相当于以下两条命令:
    git branch dev
    git checkout dev

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

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

    Creating a new branch is quick.
    然后提交:

    git add readme.txt
    git commit -m "branch test"
    dev分支的工作完成,我们就可以切换回master分支:git checkout master

    现在,我们把dev分支的工作成果合并到master分支上:git merge dev 注意到上面的Fast-forward信息,Git告诉我们,这次合并是“快进模式”,也就是直接把master指向dev的当前提交,所以合并速度非常快。

    当然,也不是每次合并都能Fast-forward!!!

    合并完成后,就可以放心地删除dev分支了:git branch -d dev

    删除后,查看branch,就只剩下master分支了:git branch

    假如在新分支开dev开发 修改内容提交,然后再切换到master分支中修改内容提交(简单理解为主分支和分支同时工作
    这种情况下,Git无法执行“快速合并”,只能试图把各自的修改合并起来,但这种合并就可能会有冲突

    Git用<<<<<<<,=======,>>>>>>>标记出不同分支的内容,我们修改下保存
    用带参数的git log也可以看到分支的合并情况:git log --graph --pretty=oneline --abbrev-commit
    最后,删除dev分支:git branch -d dev

    当你从远程仓库克隆时,实际上Git自动把本地的master分支和远程的master分支对应起来了,并且,远程仓库的默认名称是origin。

    查看远程库的信息,用git remote

    git push origin master 推送分支,就是把该分支上的所有本地提交推送到远程库

    如果要推送其他分支,比如dev,就改成:git push origin dev

    但是,并不是一定要把本地分支往远程推送,那么,哪些分支需要推送,哪些不需要呢?

    master分支是主分支,因此要时刻与远程同步;

    dev分支是开发分支,团队所有成员都需要在上面工作,所以也需要与远程同步;

    bug分支只用于在本地修复bug,就没必要推到远程了,除非老板要看看你每周到底修复了几个bug;

    feature分支是否推到远程,取决于你是否和你的小伙伴合作在上面开发。

    git checkout -- 文件名( src/pages/messageList.vue)放弃本地修改、

    总之,就是在Git中,分支完全可以在本地自己藏着玩,是否推送,视你的心情而定!

    git log命令显示从最近到最远的提交日志,我们可以看到3次提交,最近的一次是append GPL,上一次是add distributed,最早的一次是wrote a readme file。如果嫌输出信息太多,看得眼花缭乱的,可以试试加上--pretty=oneline参数

    我们要把当前版本“append GPL”回退到上一个版本“add distributed”,就可以使用git reset命令:git reset --hard HEAD^

    Git的版本回退速度非常快,因为Git在内部有个指向当前版本的HEAD指针,当你回退版本的时候,Git仅仅是把HEAD从指向append GPL所以你让HEAD指向哪个版本号,你就把当前版本定位在哪

    在Git中,总是有后悔药可以吃的。当你用$ git reset --hard HEAD^回退到add distributed版本时,再想恢复到append GPL,就必须找到append GPL的commit id。Git提供了一个命令git reflog用来记录你的每一次命令:git reflog

  • 相关阅读:
    spoj 3273 Treap
    hdu1074 Doing Homework
    hdu1024 Max Sum Plus Plus
    hdu1081 To the Max
    hdu1016 Prime Ring Problem
    hdu4727 The Number Off of FFF
    【判断二分图】C. Catch
    【01染色法判断二分匹配+匈牙利算法求最大匹配】HDU The Accomodation of Students
    【数轴涂色+并查集路径压缩+加速】C. String Reconstruction
    【数轴染色+并查集路径压缩+加速】数轴染色
  • 原文地址:https://www.cnblogs.com/lhl66/p/7689804.html
Copyright © 2011-2022 走看看