使用git对项目进行管理并与github仓库关联

1.安装git 直接去git官网下载安装后就会有git-cli类似linux系统
    配置用户名邮箱
        git config --global user.name "xxx"
        git config --global user.email "[email protected]"

2.进入一个文件夹作为git存储操作的文件夹,git初始化命令git init让这个文件夹具备git仓库

3.把文件提交到git仓库步骤
    1.git add 文件名
    2.git commit -m "说明"

4.git status命令可以让我们时刻掌握仓库当前的状态 

5.git diff命令查看之前修改了什么

6.git log命令显示从最近到最远的提交日志

7.版本回退
    1.HEAD表示当前版本,也就是最新提交的版本
    2.上一个版本就是HEAD^上上个版本就是HEAD^^上100个版本就是HEAD~100
    3.回退命令git reset --hard HEAD^
    4.git reset --hard 版本号 回到指定的版本

8.git的牛逼之处远程创库github
    1.通过Git-cli生成私钥和公钥,命令ssh-keygen -t rsa -C "[email protected]"
    2.找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。
    3.登录github把公钥写入
    4.在github上创建一个创库,使用网站用户边上的+号new repository,以便把电脑本地的库与github上的同步
    5.将本地库与github上的库建立连接,在本地库运行git remote add origin [email protected]:webprevious/gitlearn.git
    6.将本地库里面内容推送到github上的库里git push -u origin master
    7.用git push命令,实际上是把当前分支master推送到远程,第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令

9.从零开发,那么最好的方式是先创建远程库,然后,从远程库克隆。远程克隆命令git clone [email protected]:webprevious/库名.git
    1.Git支持多种协议,默认的git://使用ssh,但也可以使用https等其他协议
    2.GitHub给出的地址不止一个,还可以用https://github.com/webprevious/库名.git

10.分支branch管理
    1.创建分支并切换到该分支命令:git checkout -b dev此命令相当于:git branch dev 和 git checkout dev两句合并
    2.git branch命令会列出所有分支,当前分支前面会标一个*号。
    3.当自己在新建的分支上完成了自己的工作,就可以切换回master分支,但此时master分支并没有自己之前那个分支新加的内容,而是需要把新建的分支的内容合并到master分支上
    4.合并分支到当前分支命令:git merge 新建那个分支名字
    5.合并完成分支就可以删除分支,命令:git branch -d 分支名字

    6.当在dev分支提交了修改,master中也提交了修改,且这两个修改有冲突那就无法合并,需要解决冲突然后重新提交
    7.分支管理策略
        1.通常,合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息。
        2.如果要强制禁用Fast forward模式,Git就会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息。
        3.新的合并命令:git merge --no-ff -m "merge with no-ff" dev
    8.bug分支,当你在开发一个新的分支时,此分支还未写完你又不想提交但是有个bug需要立马解决,Git提供了一个stash功能,可以把当前工作现场“储藏”起来,等以后恢复现场后继续工作
        命令:git stash
    9.使用git stash命令后工作区就干净了就可以放心创建分支来修复bug,首先要确定在哪个分支上修复bug然后切换到哪个分支
    10.完成bug修复回到之前保存的工作现场,查看之前的工作现场命令:git stash list
    11.恢复方法:一是用git stash apply恢复,但是恢复后,stash内容并不删除,你需要用git stash drop来删除;另一种方式是用git stash pop,恢复的同时把stash内容也删了
    12.添加一个新功能时,你肯定不希望因为一些实验性质的代码,把主分支搞乱了,所以,每添加一个新功能,最好新建一个feature分支,在上面开发,完成后,合并,最后,删除该feature分支。
    13.但此时接到上级命令,因经费不足,新功能必须取消!虽然白干了,但是这个包含机密资料的分支还是必须就地销毁
    14.使用git branch -d 分支名时提示错误了,说该分支还没有合并如果删除,将丢失掉修改,如果要强行删除,需要使用大写的-D参数

11.标签 意义在于方便,虽然commit也可以记录位置,但是commit id太长了,语义不行
    1.切换到要打标签的分支
    2.打标签命令git tag v1.0
    3.查看标签git tag
    4.把标签打到指定commit id上命令:git tag v0.9 f52c633
    5.git show 查看标签信息
    6.建带有说明的标签,用-a指定标签名,-m指定说明文字 命令:git tag -a v0.1 -m "version 0.1 released" 1094adb
    7.标签总是和某个commit挂钩。如果这个commit既出现在master分支,又出现在dev分支,那么在这两个分支上都可以看到这个标签。
    8.删除标签git tag -d v0.1
    9.因为创建的标签都只存储在本地,不会自动推送到远程。所以,打错的标签可以在本地安全删除。如果要推送某个标签到远程,使用命令git push origin
    10.一次性推送全部尚未推送到远程的本地标签 命令:git push origin --tags
    11.如果标签已经推送到远程,要删除远程标签就麻烦一点,先从本地删除
        git tag -d v0.9
        git push origin :refs/tags/v0.9

    
12.使用git对项目进行管理

将项目文件夹初始化为一个Git仓库 git init

先在远程github上创建一个仓库里面会有关联命令

关联远端github上远程仓库 git remote add origin https://github.com/webprevious/gshop.git

将文件夹内的文件提交到本地暂存区 git add *

将本地暂存区提交到本地仓库git commit -m "提交"

将本地仓库提交到云端github仓库git push origin master

从云端github获取仓库文件git pull origin master

你可能感兴趣的:(使用git对项目进行管理并与github仓库关联)