git使用教程-小白专用

对于程序员来说,git再熟悉不过了,但是对于很多新手来说,还是不清楚如何自己上传项目到远端然后用另一台电脑继续完成你的项目,或者如何和同事通力合作完成一个项目,如果你有这些问题看完就对了,温馨提示此文章适合小白观看。

快捷施法

git clone 你的仓库地址 //克隆仓库到本地
git clone https://账号:密码@项目地址 //克隆私有项目
举个例子:
git clone https://JohnGreenn:密码@github.com/JohnGreenn/Demo.git

git status //查看状态
git add . //新增内容到暂存区
git add * //git add * 会忽略.gitignore把任何文件都加入
git commit -m "第一次提交" //提交内容到本地
git push origin main (master)//提交内容到线上 简写 git push
git pull origin main(master) //拉取最新代码到本地
git branch newbranch1 // 新建分支
git checkout newbranch1 //切换到此分支
git merge newbranch1 //合并分支
git branch -d newbranch1 //删除本地分支(已合并)
git branch -D newbranch1 //删除本地分支(未合并)
git push origin --delete newbranch1 //删除远程分支
git config user.name //查看用户名
git config --global user.name "xxx" //切换用户
git config --global user.email "892538233@qq.com" //切换邮箱
git remote set-url origin 你的项目地址 //更改地址
git gc //清理不必要的文件并优化本地存储库

报错处理

OpenSSL SSL_read: Connection was reset, errno 10054
OpenSSL SSL_connect: Connection was reset in connection to github.com:443

git config --global http.sslVerify "false"

下面是几个常用的git配置查看命令:glo

git config --global http.proxy #查看git的http代理配置
git config --global https.proxy #查看git的https代理配置
git config --global -l #查看git的所有配置

实战演练

1. 新建仓库

1.在github中新建仓库


image.png

2.输入仓库名,勾选“Add a README file”,然后新建仓库。


image.png

2. 把仓库clone到本地

image.png

在本地新建一个文件夹 右击git bash here 没下载git bash的先百度下载
然后clone你的仓库地址

git clone 你的仓库地址
image.png

3. 进入本地仓库,查看状态

ls 查看目录结构
cd git-demo 进入仓库目录
git status 查看状态
image.png

4.创建虚拟同事的本地仓库

为了模拟同事,设置一个不一样的文件名。

cd .. //返回上个目录
git clone 你的仓库地址 git-demo-collegue
image.png

此时你之前新建的文件下多了一个虚拟同事的目录


image.png

到此为止完成了二人合作的架构。

5.自己上传改动的项目

首先回到自己的目录

cd ../git-demo

然后,在README.md 增加自己的内容:


image.png

image.png

此时git status可以看到 我的修改记录,但是没有上传只是做了修改。

6.把修改的内容添加到暂存区:

git add README.md // 简写:git add .
image.png

此时再看状态,它绿了,说明已经添加到暂存区

7. 提交暂存区的内容

git commit -m "我的第一次提交" //这是简便写法 如果直接git commit的话 搜以下vim的基本用法

这时候你就完成了本地的提交
接下来就是上传到线上

8.把本地提交传到远端

git push origin main // 简写git push 
  • git push origin main指定远程仓库名和分支名(推荐使用)
  • git push 不指定远程仓库名和分支名 是简写


    image.png

    这时候你再去git线上仓库看,发现你的README 已经发生了改变。


    image.png

9.同事拉取你的最新改动

先切换到你虚拟同事的目录,然后把你刚刚的提交拉到同事的本地。

cd ../git-demo-collegue //切目录
git  pull origin main //拉最新的代码到本地
image.png

这样同事就拿到了你的代码。
11.建立branch
比如同事拿到了一个新的需求:新增我的个人资料功能,但他又怕影响到主分支,所以他可以新建一个分支,等他做完,再进行合并。

git branch newfunction1 //新建分支
git checkout newfunction1 //切换到此分支
image.png

此时同事就切换到了这个新的分支,可以进行新功能的编写了。

10.在新分支新进文件改动

同事在新的分支,新增了一句话。


image.png

然后本地提交。

git add README.md
git commit -m "来自同事的第一次提交"
image.png

此时同事完成了自己的项目,并进行了本地提交。

11.同时,你也在main上做出了些改动

这时同事还没有把自己刚刚做的东西上传到远端,但你这时候也在做自己的任务,比如你新增了一个txt文档。

cd ../git-demo  //先切回自己的目录
git add log.txt //新增了一个文档
git commit -m "我的第二次提交" //本地上传
git push origin main // 推到远端
image.png

此时我完成了,我的log.txt 文件从本地上传到线上的操作。

12.同事拉取你的代码

因为同事已经完成了他的任务(新增个人资料),所以在合并项目之前,先看一下我有没有提交新的代码,如果没有先拉的话,就会导致同事的项目和我的项目合并失败,所以每当上传新的项目到线上时,一定要先pull 后push。

cd ../git-demo-collegue //切回同事目录
git checkout main //切到主分支
git pull origin main //拉最新的先线上代码
image.png

13.合并

现在,本地main已经是最新的,就可以把newbranch1 合并到main上来了:

git merge newbranch1 //合并分支
git push origin main //上传到远端
image.png

此时同事就完成了,本地分支合并并把自己新增的内容上传到线上的git操作。


image.png

这时我和同事通力合作的git协作就完成了。

create a new repository on the command line

echo "# TitleX" >> README.md
git init
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin https://github.com/JohnGreenn/TitleX.git
git push -u origin main

push an existing repository from the command line

git remote add origin https://github.com/JohnGreenn/TitleX.git
git branch -M main
git push -u origin main

git ignore

#我用的是这份
#built application files
*.apk
*.ap_

# files for the dex VM
*.dex

# Java class files
*.class

# generated files
bin/
gen/

# Local configuration file (sdk path, etc)
local.properties

# Windows thumbnail db
Thumbs.db

# OSX files
.DS_Store

# Eclipse project files
.classpath
.project

# Android Studio
.idea
#.idea/workspace.xml - remove # and delete .idea if it better suit your needs.
.gradle
build/

# Signing files
.signing/

# User-specific configurations
.idea/libraries/
.idea/workspace.xml
.idea/tasks.xml
.idea/.name
.idea/compiler.xml
.idea/copyright/profiles_settings.xml
.idea/encodings.xml
.idea/misc.xml
.idea/modules.xml
.idea/scopes/scope_settings.xml
.idea/vcs.xml
*.iml

/.gradle
/.idea
/build
*/build
/captures
/.cxx
*/.cxx
/.externalNativeBuild

._*
*.iml
.DS_Store
local.properties
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,122评论 6 505
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,070评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,491评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,636评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,676评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,541评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,292评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,211评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,655评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,846评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,965评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,684评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,295评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,894评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,012评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,126评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,914评论 2 355

推荐阅读更多精彩内容