欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

Git与GitHub的使用

发布时间:2025/3/21 编程问答 46 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Git与GitHub的使用 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

Git

如何开始使用? 跟着如下步骤

  • 在浏览器中输入url:github.com。
  • 然后输入用户名和密码。
  • 在your repositories菜单栏那里点击New Repository。
  • 输入Repository Name。
  • 点击Create repository。
  • 进入你的Repository页面,点击Clone or download, 点击 Use SSH。
  • 看到如下格式的SSH, git@...com:xxxx/repository.git,复制
  • 打开git bash,在里面输入命令行 git clone git@...com:xxxx/repository.git
  • 但是clone不了,报错了,因为没设置公匙。
  • 怎么办呢?创建公钥私钥对。在git bash上输入命令行 ssh-keygen -t rsa -b 4096 -C "你的github邮箱"
  • 输入命令后,一直按回车,最后变成这个样子,在~/.ssh目录下生成了公钥id_rsa.pub和私钥 id_rsa。
  • 然后显示文件,在git bash输入cat ~/.ssh/id_rsa.pub。 或也直接打开这个文件下,用编辑器打开这个文件直接拷贝。
  • 拷贝好之后,重新打开github网页,点击你的头像,进入setting,左侧SSH and GPG keys。然后单击New SSH Key,输入title,把key完整的拷贝进key
  • 好了,现在你的个人电脑有权限了。重新输入命令行git clone ....
  • clone完毕后,cd到仓库,然后touch个文件,随便写入点内容
  • git add .
  • git commit -am "say something"。
  • git push origin master
  • 到此,你就基本掌握git bash和git hub的配合使用了。

    Git原理

    关于版本控制

    版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。

    • 本地版本控制系统
    • 集中式版本控制系统(SVN); Software Version Number
    • 分布式版本控制系统(Git)

    Git优势

    诞生自2005, Linux开源社区

    • 速度
    • 简单的设计
    • 允许上千个并行分支
    • 分布式

    重要概念

    • 已修改(modified)修改了某个文件,但还没有提交保存。
    • 已暂存(staged)把已修改的文件放在下次提交时要保存的清单中。
    • 已提交(committed)该文件已经被安全地保存在本地数据库中了。

    配置用户名和邮箱

    git config --global user.name "xxxx"
    git config --global user.email xxxx@xx.com

    检查有没有提交到暂存区

    git status

    noting to commit or something to commit

    把所有的文件(添加删除修改)都放入到暂存区

    git add .

    把暂存区的更新提交到本地库

    git commit -am "add file"
    (git commit with a message "add file")

    git status 检查文件的状态(在哪儿)


    把当前本地库里的改动推送到远程仓库(origin)的master分支

    git push
    把本地仓库的文件推送到远程仓库

    第一次使用 git push origin master


    修改删除文件

    把远程仓库的变动更新合并到本地仓库

    git pull

    修改文件

    vim a.md
    git add . 或者 git add 文件名.文件扩展名

    这里需要注意,如果提交消息包含大量字符窜,提交参数不用加m

    此时会进入vim界面,按下i进入编辑状态,进行编辑

    编辑完成后按下esc进入命令状态,输入:wq! 或 :aq! 保存退出vim

    git commit -a | git commit -am
    (git commit -ammend) | (git commit -ammend message)

    git push origin master

    删除文件

    rm a.md

    git add .

    git commit -am "删除a.md"

    如果之前已经git push origin master过,后面可以直接简化成git push

    问题

    • origin代表什么? 就是仓库主干master的名字, 可以通过git remote -u mastername 主干地址

    本地创建一个git项目仓库推送到远程空仓库

  • mkdir newProject
  • cd newProject
  • 把一个文件夹初始化成一个本地git仓库 注意仓库和文件夹的区别在于仓库下有一个隐藏的.git文件夹,里面有一些信息。对于一个仓库,删除.git文件夹,就变成一个普通文件夹了。
  • git init
  • touch index.html
  • echo "hello" > index.html
  • git commit -am "init"
  • git remote add origin git@github.com:xxxx/xxxx.git, 这里把远程库的地址添加个标签叫origin
  • git push -u origin master
  • 查看本地库里记录的远程库地址 git remote -v
  • 推送到远程库地址 git push origin master。(慎用,这样会强制推送,会覆盖别人的代码,git push -f origin master。)
  • 在添加一个远程库的标签,git remote add gitlab git@gitlab.com:abc/blog.git
  • 推送到gitlab标签的地址上,git push gitlab master
  • 修改origin标签对应的地址,git remote set-url origin git@github.com:xxx/blog3.git
  • 把gitlab标签改名为coding,git remote rename gitlab coding
  • 分支操作 很重要的一部分

    查看有哪些分支,git branch -a

    创建本地仓库dev分支,git branch dev

    切换到dev分支,git checkout dev

    touch b.md

    git add .

    git commit -am "add b.md"

    推送到origin地址的dev分支上,git push origin dev

    合并分支,切换回master主干, git checkout master。git merge dev,在主干上合并dev分支。

    冲突

    当自己和别人修改同一个文件的同一个地方,在执行git pull时更新本地合并时, 会出现冲突。

  • 修改冲突文件
  • 重新提交
  • 总结

    以上是生活随笔为你收集整理的Git与GitHub的使用的全部内容,希望文章能够帮你解决所遇到的问题。

    如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。