关于git和GitHub

    技术2023-05-05  82

    总结:

    github是什么?怎么在github上创建一个仓库? 通过Git进行版本控制的软件源代码托管服务平台   New repository怎么把github上自己创建的仓库克隆到本地?

    创建一个新仓库(勾选Initialize this repository with a README)

    克隆一个本地库 git clone git@github.com:github用户名/gitskills.git


    为什么Git比其他版本控制系统设计得优秀,因为Git跟踪并管理的是修改,而非文件。

    mkdir learngit 创建文件夹

    vi readme.txt 创建并编辑txt文件

    cat readme.txt 查看文件内容

    git init 把目录变成Git可以管理的仓库

    git add xxx 告诉Git把文件添加到仓库

    git rm xxx 删除文件

    git commit告诉Git,把文件提交到仓库 (-m后面输入的是本次提交的说明)

    为什么Git添加文件需要add,commit一共两步呢?因为commit可以一次提交很多文件,所以你可以多次add不同的文件

    git status告诉你有文件被修改过,用git diff可以查看修改内容。

    git log可以查看提交历史,以便确定要回退到哪个版本。

    git reflog查看命令历史,以便确定要回到未来的哪个版本。

    git reset --hard HEAD^ 回退到上一版本

    git reset --hard commit_id 指定回未来的某个版本

     

    git checkout -- readme.txt 把readme.txt文件在工作区的修改全部撤销,即让这个文件回到最近一次git commit或git add时的状态。其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。

    git reset HEAD readme.txt    把暂存区的修改撤销掉(unstage),重新放回工作区

     

    由于本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以,需要一点设置:

    第1步:创建SSH Key。 

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

    第2步:登陆GitHub,打开“Account settings”,“SSH Keys”页面:

    然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容:

    为什么GitHub需要SSH Key呢?因为GitHub需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而Git支持SSH协议,所以,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送。

    git remote add origin git@github.com:SpringMemories/learngit.git  关联一个远程库

    git push -u origin master 第一次推送master分支的所有内容

    git push origin master 推送最新修改

     

    假设我们从零开发,最好的方式是先创建远程库,然后从远程库克隆。

    创建一个新仓库(勾选Initialize this repository with a README

    克隆一个本地库 git clone git@github.com:SpringMemories/gitskills.git

     

    创建并切换一个分支 git checkout -b dev = git switch -c dev

            相当于 git branch dev    git checkout dev = git switch dev

    git branch 查看当前分支

    git merge 合并指定分支到当前分支

    git branch -d <name> 删除分支

    开发一个新feature,最好新建一个分支;

    如果要丢弃一个没有被合并过的分支,可以通过git branch -D <name>强行删除。

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

     


    git clone 自己的项目到Github:

    1 在Github创建一个空仓库

    2 git clone git@github.com:github用户名/travel.git

    3 cp -R 要拷贝的文件 /travel

    4 git add file

    5 git commit -m 'message'

    6 git push

    Processed: 0.011, SQL: 9