git与github的正确使用姿势

github

git与github

在学习如何使用git和github前我们先详细了解下什么是git?而github又是什么?

git是一种分布式版本控制系统,他可以记录你开发过程中的每一次改动,也就是记录你每次改变的版本,可以进行回退,在版本间自由切换。而且git是分布式的也就说更利于团队间的合作,你发布你的版本后,如果有其他成员想对它进项更改,只需要git clone你的版本 改动后在push下 如果你感觉他的改动符合你的想法只需要 合并就可以形成新的版本了。

而github就是一个开源的社区,使用git来进行操作。github就像是一个大仓库,储存了很多优秀的开源代码,也有人戏称github是最大的 “同性交友社区”。

在了解了git与github后我们就来看一看如何进行操作吧。(以下例子是已经下载git 并且配置环境变量的前提下)

比如我完成了我的项目,以后可能会进行更改,但是我又怕改动后找不到原来的版本了这时候我就觉得我该使用git了。

我的仓库名字叫做 “demo”,这时候我需要在命令行输出 cd demo 切换到demo目录下:

然后 git init 代表我初始化了这个项目 要使用git对其进行操作

再然后 使用 git add * 代表我把这个项目所有文件都存到了git的暂存区中

之后 git commit -m “版本一” 这句代表我这次的提交说明,代表我这次提交的是项目的版本一

这个时候如果你暂时不打算使用github,基本就告一段落了,git已经把你的项目复制到一个隐藏的文件夹内并且给她设置了一个名为版本一的信息。

这个时候你突然想继续更改你的项目,只需要直接更改。 更改过后你想把这次的更改提交为版本二 这个时候 使用 git status 就可以查看你这次跟上次相比改动的部分,然后依旧 git add * 也可以只提交你改动的文件 * 代表所有文件。 之后git commit -m “版本二” 代表第二次提交的名称为版本二。

你发布版本二后发现这个版本并不是你想要的你想从版本一重新开始编辑 这个时候我们使用 git log 可以查看每次提交的git 历史记录 我们可以看到有 版本一 版本二两个版本,使用 git reset --hard HEAD^ 这个时候我们打开项目发现我们的项目代码退回到了版本一的样子。

git reset --hard commit_id 这个命令就是让git回退到指定版本 使用git reflog可以查看每次版本的 commit_id ,之后使用命令就可切换到对应版本。

现在我们想把我们的项目发布到github中:(下面例子在你已经注册了github的前提下进行)

生成ssh-key : ssh-keygen -t rsa -c "user-email"

然后 cat ~/.ssh/id_rsa.pub 查看刚刚创建的ssh-key 复制它
如果命令无效 你就在你的盘中找id_rsa.pub文件复制里面的内容。

在github中有个ssh设置 把你复制的内容粘贴到上面。

然后输入 ss -T git@github.com 查看是否连接github成功。

如果回车看到:You’ve successfully authenticated, but GitHub does not provide shell access 。表示已成功连上github。

首先让git与github创建一个连接:

git config --global user.name 设置你的github名字到git配置文件中
git config --global user.email 设置你的github邮箱到你的git配置文件中

然后在github中创建一个库用来装你本地的项目,创建成功后 会有一个库的地址记录下来

git remote add origin git@github.com:yourName/yourRepo.git 把后面的部分改成你的仓库地址 代表将你的项目与github库连接

接下来使用 git push origin master 代表将你的本地项目上传到github中 master代表上传到主分支 如果传到其他分支则需要更改为其他分支名字。

如果本地更改依旧执行上述 git add 和 git commit 命令 然后git push 上传,github就会更新你的项目。

这里有个注意点,就是如果你在github中更改了文件,本地是不会有改动的,这个时候如果你改动了本地在push 就会有错误。 你先使用git pull 更新本地库 然后 git merge <branch> 尝试自动合并你的改动 之后再push 就可以了。

最后

其实还有如git checkout 、git branch等命令我没有详细的讲,因为涉及太多我这里只是讲一个大概的git与github的流程,让大家对git和github有个简单的了解。 如果大家想详细的学习git我推荐下廖雪峰老师的git教学,百度就可以搜到,很详细并且有许多的配图能形象的了解git的原理,我的文章中如果有哪些错误也请大家指正,我会加以修改。

最后也希望我能坚持住无聊时写一些文章的习惯吧,我的个人博客也会同步更新文章。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.git的安装 1.1 在Windows上安装Git msysgit是Windows版的Git,从https:/...
    落魂灬阅读 14,339评论 4 54
  • Git 基础 基本原理 客户端并不是只提取最新版本的文件快照,而是把代码仓库完整的镜像下来。这样一来,任何一处协同...
    __silhouette阅读 16,056评论 5 147
  • 有些地方,就是要去,就像一些一定要见的人,一定要说的话一样。一定要做的事情,便无法计较得失。 我坐了49个小时的火...
    半山小院儿阅读 2,976评论 0 2
  • 啊,体育,天神的欢娱,生命的动力。你猝然狰然在灰蒙蒙的林间空地,受难者,激动不已。你防是容光焕发的使者,向暮年人微...
    十年一井阅读 1,696评论 0 0
  • 01 总是羡慕孩子,最简单的方式表达着自己所有的情绪,成长伴随着顾虑、自尊、情绪、隐忍让我们长成了小时候想要的年纪...
    Shadow_y_阅读 3,392评论 0 0