名词说明:
- Git是版本管理的工具。
- GitHub是一个支持Git的仓库。
- GitLab是一个开源的Git仓库软件,可以在服务器上部署。
- GitHub Desktop是管理Github远程仓库的的软件。
本站的分享的一些代码也在我的GitHub上:https://github.com/guanjihuan。
一、Git的常用命令
1. 初始设置
- 查看:git config --list
- 设置邮箱:git config --global user.email "you@example.com"
- 设置名字:git config --global user.name "your name"
2. 基本操作
- 文件夹git初始化:git init
- 添加修改的内容:git add .
- 确认修改内容:git commit -m 'version_name'
3. 远程仓库信息
- 查看远程仓库名称:git remote
- 查看远程仓库名称和对应链接:git remote -v
- 查看远程仓库的详细信息(远程仓库名称通常是origin):git remote show origin
- 添加一个远程仓库到本地:git remote add origin https://github.com/username/repository.git
- 从当前仓库中删除指定的远程仓库:git remote remove orgin
4. 下载和推送
- 克隆或下载代码:git clone repository_address
- 下载远程代码并合并:git pull 或者 git pull origin
- 上传远程代码并合并(本地分支名称通常是master或main):git push origin master
- 强行上传并覆盖(本地分支名称通常是master或main):git push -f origin master
- 获取远程代码(当有多人协同操作时,可能会用到这个,获取后不会立即合并本地代码。通常可以直接用 git pull,立即合并):git fetch
5. 查找搜索
- 在所有历史版本中搜索内容:git grep 'search_word' $(git rev-list --all)
6. 分支管理
- 查看日志:git log
- 查看分支:git branch
- 创建分支:git branch new_branch
- 删除分支:git branch -d new_branch
- 切换分支:git switch new_branch
- 合并分支:git merge new_branch
二、GitHub和GitHub Desktop的使用
Git需要记住一些命令,比较麻烦。这里首先讲下如何使用Github和Github Desktop,实现基本的上传和版本管理。Github的网址:https://github.com/。Github Desktop下载与安装:https://desktop.github.com/。
在Github上新建账户后,登录。Github常见的三个操作:
- Watch:观察。关注别人的项目,当这个项目发生变动时,会在通知中心中收到消息。
- Star:星星。就是收藏的意思,比较常用。
- Fork:拷贝。将别人的项目拷贝到自己的账户上,后续项目更新时自己账户上还是旧版本。对于一些比较重要的项目,自己可以留个底,防止对方删除项目。一般来说不使用这个功能。
下载Github Desktop后安装,打开软件。然后可以创建自己的项目(或者称为仓库Repository)。建议新手按软件提示创建“desktop-tutorial”教学项目。按步骤操作,走一遍流程。常见的操作或命令有:
- Creat a branch:新建分支。当有很多个版本时,可以创建分支。如果没有多个版本,这个就可以不用操作。说个很有一个很有意思的现象,就是切换不同分支时,该项目的本地文件夹里的文件是不同的,这是git程序的效果(因为该文件夹里还包含一个.git的隐藏文件夹)。
- Fetch origin:获取云端的版本。在修改项目内容时,最好和云端同步后再操作。如果没有做这个操作,在不同步时,在push推送之前,系统也会让先Fetch,同步后才能推送到云端。
- make a commit:确认修改(或者记下修改)。当本地的文件发生变化,在Github desktop里会有个按钮"commit to ...",意思是在本地的项目中是否允许修改,此外在commit之前,要写个summary,简短说下做了哪些修改。
- Push: 推送。在commit之后,就可以点Push了,把本地更新推送到云端。
- Pull resquest:请求主分支master接收(拉)子分支的内容。如果自己仓库中子分支是更好的版本,那么可以请求主分支接受子分支的内容。或者是这种情况,自己当看到别人的项目时,想替别人做些修改,可以先Fork到自己仓库,然后修改后,可以creat pull request给被Fork的原作者。
- Merge:合并,接收另外一个分支的内容。一般是在Pull respuest后点同意合并。或者是在本地上操作直接将一个分支合并到另一个分支上。merge后没有的会增加,额外的不会被删除,还有其他规则,也有可能会出现冲突的情况,这里不再详细讨论了。
一般情况下,make a commit 和 Push 这两个操作比较常用,其他操作用的比较少。
更多参考资料:
[1] Git 创建仓库 | 菜鸟教程 (runoob.com)
[2] Github清空远程仓库_sinat_34937826的博客-CSDN博客_github清空仓库
【说明:本站主要是个人的一些笔记和代码分享,内容可能会不定期修改。为了使全网显示的始终是最新版本,这里的文章未经同意请勿转载。引用请注明出处:https://www.guanjihuan.com】