0


Git学习记录

Git学习日志

上传至远程仓库

一、进入项目所在文件夹,右键点击选择

git bash here

。(如果此文件夹里有.git文件,请删除!)

二、输入命令

git init

三、输入命令

git remote add origin https://…get

(https://…get为在码云上新建项目时获取的链接地址)

四、输入命令

git add .

(

add

后面要有一个空格后再加上

.

五、输入命令

git commit -m"xxx"

“xxx”

为备注信息,可写项目版本号,如:1.0、2.0等)

六、输入命令

git push origin master

(git push -u origin master -f为强制提交代码上码云的命令,但最好还是使用git push origin master命令上传,如无特殊情况请勿使用强制命令上传)

七、在我的码云处查看项目是否上传成功!

配置
ssh-key

生成秘钥

ssh-keygen -t rsa -C "你的邮箱"  //一直回车,然后y
~/.ssh/ 目录会生成 XXX-rsa (私钥)和 XXX-rsa.pub (公钥)

XXX-rsa.pub (公钥)

复制到Git网页-设置-ssh配制-新建秘钥-粘贴

设置姓名和电子邮件地址:

git config
git config --global user.name "XXX"
git config --global user.email [email protected]
配置
.gitignore

文件

不希望 Git 自动添加这些文件

.gitignore

模式规则如下:

  • 空行或以开头的行将被忽略。#
  • 标准 glob 模式有效,并将在整个工作树中递归应用。
  • 您可以使用正斜杠 () 开始模式以避免递归。/
  • 您可以使用正斜杠 () 结束模式以指定目录。/
  • 您可以通过以感叹号 () 开始模式来否定模式。!

一、创建

.gitignore

文件

二、定义Git全局的

.gitignore

文件

git config --global core.excludesfile ~/.gitignore

三、举例文件内容

#               表示此为注释,将被Git忽略
*.a             //表示忽略所有 .a 结尾的文件
!lib.a          //表示但lib.a除外
/TODO           //表示仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
build/          //表示忽略 build/目录下的所有文件,过滤整个build文件夹;
doc/*.txt       //表示会忽略doc/notes.txt但不包括 doc/server/arch.txt
 
bin/:           //表示忽略当前路径下的bin文件夹,该文件夹下的所有内容都会被忽略,不忽略 bin 文件
/bin:           //表示忽略根目录下的bin文件
/*.c:           //表示忽略根目录下.c文件,不忽略 build/.c文件
debug/*.obj:    //表示忽略debug/io.obj,不忽略 debug/common/io.obj和tools/debug/io.obj
**/foo:         //表示忽略/foo,a/foo,a/b/foo等
a/**/b:         //表示忽略a/b, a/x/b,a/x/y/b等
!/bin/run.sh    //表示不忽略bin目录下的run.sh文件
*.log:          //表示忽略所有 .log 文件
config.php:     //表示忽略当前路径的 config.php 文件
 
/mtk/           //表示过滤整个文件夹
*.zip           //表示过滤所有.zip文件
/mtk/do.c       //表示过滤某个具体文件
实际应用
.gitignore

应用

要忽略.idea文件夹及其下面所有文件的变更,你只需在

.gitignore

文件中添加以下一行:

.idea/

如果你之前已经将.idea目录或其下的文件添加到了Git仓库中,执行以下步骤来从Git跟踪中移除:

git rm -r --cached .idea/

提交这个更改到Git仓库:

git commit -m "Remove .idea directory from Git tracking"

注: git rm 与git rm --cached区别

当我们需要删除暂存区或分支上的文件, 同时工作区也不需要这个文件了, 可以使用

git rm file_path

如若本地又需要使用, 只是不希望这个文件被版本控制, 可以使用

git rm --cached file_path
回退操作

情况1:最近一次提交的记录有遗漏未提交,将两个commit合为一个

git commit --amend // 把上一次的commit记录去除,修改commit信息。

a

或者

i

或者

o

进入编辑模式,修改好commit信息后按Esc键退出编辑模式,然后

:wq

保存编辑的信息。

情况2:回退代码到某次 commit

git log   //查看提交记录

说明:commit 单词后面红框里的十六进制字符串,就是每次提交代码时,git生成的唯一记录编码。Git 可以通过该编码准确锁定每次的提交记录)

git reset --hard commitID   //回退代码到某次 commit

(其中,

commitID

根据实际情况,确定需要回退的 commit 记录ID。)

git reset --soft // 回退到指定commit,该commit之后的提交内容,保留工作目录,并把重置 HEAD 所带来的新的差异放进暂存区
git reset --hard // 回退到指定commit,该commit之后的提交内容,工作区和暂存区的内容都被抹掉
git reset 或 git reset --mixed // 不带参数,或带参数–mixed(默认参数),与git reset --soft 不同,它将会把差异放到工作区

代码冲突

本地代码不是最新代码,既要更新代码 又要提交编写代码

先更新在提交 详细参考–链接

标签: git

本文转载自: https://blog.csdn.net/TIANLEeeee/article/details/140905258
版权归原作者 Tian_xiaohua912 所有, 如有侵权,请联系我们删除。

“Git学习记录”的评论:

还没有评论