Git入门本地常见配置与操作

一、初始化

1全局变量:

1.1设置用户 git config --global user.name "user_name"

                       git config --global user.email "XXXXX@gmail.com"

       git config --global color.ui "always"

1.2设置默认编辑器

eg:sublime  新建一个GIT_EDITOR的系统环境变量,值为sublime.exe

 在PATH环境变量后追加sublime的安装目录C:\Program Files\Sublime Text 2

1.3解决中文乱码问题:

1.3.1解决bash控制台的ls命令时,中文文件名乱码 

        在Git\etc\git-completion.bash 文件中加一行alias ls="ls --show-control-chars --color=auto"

1.3.2解决bash控制台git commit 无法加入中文注释

       修改Git\etc\inputrc文件    set output-meta on

    set convert -meta off

1.3.3解决git log命令中中文注释乱码(只在控制台有效) 

     在Git\etc\profile中追加一行:export LESSCHARSET=ios8859

1.3.4解决gitk显示中文注释乱码

   git config --global i18n.commitencoding IOS-8859

   git config --global i18n.logoutputencoding IOS-8859


2初始化新版本库

git init        只会在根目录下创建一个名为.git的文件夹


3设置忽略的文件

3.1设置所有人都需忽略的文件

在根目录新建一个名为.gitignore的文本文件

在命令行执行echo *.jpg>.gitignore

将.gitignore文件加入版本库提交

3.2设置自己需忽略的文件

修改.git/info/exclude文件  可使用正则表达式


4添加新文件到版本库

添加单个文件  git add file.txt

添加所有txt文件  git add *.txt

添加所有文件  git add .      (包括子目录,但不含空目录)


5提交   git commit -m "comment"


二常用操作

1提交

1.1提交所有修改  git commit -m "comment" -a

1.2提交单个文件  git commit -m "comment" XXX.txt

1.3增补提交          git commit -C head -a --amend     不会产生新的提交记录

 

2撤销修改

2.1撤销尚未提交的修改

2.1.1撤销1、2个文件的修改   git checkout head XXX.txt  YYY.txt

2.1.2撤销所有txt文件的修改    git checkout head *.txt

2.1.3撤销所有文件的修改        git checkout head .

2.2撤销提交

2.2.1反转提交  反转提交但并不提交   eg:反转最近一次提交  git revert --no -commit head 相当于提交最近一次提交的反操作

2.2.2复位   

            取消暂存  git reset head 或 git reset head <filename>

复位到head之前的那个版本 git reset --hard head^   不会再版本库中留下痕迹


3分支

3.1显示本地分支  git branch

3.2显示所有分支 git branch -a

3.3在当前分支的末梢创建新分支 git branch <branchname>

3.4检出分支  git checkout <branchname>

3.5基于当前分支的末梢创建新分支并检出分支   git checkout -b <branchname>

3.6基于某次提交、分支或标签创建新分支  git branch emputy bfe57de0   

gir branch emputy2 emputy

3.7分支合并

3.7.1普通合并

3.7.1.1合并并提交 git merge <branchname> 如果发生冲突,就不会自动提交,如果不想解决冲突,可以使用git checkout head . 撤销

3.7.1.2合并但不提交 git merge --no-commit

3.7.2压缩合并

3.7.2.1压缩合并后提交 git merge--squash <branchname>

3.7.2.2压缩合并后不提交git merge --squash --no-commit <branchname>

3.7.3拣选合并

拣选某次提交合并但不提交 git cherry-pick --no-commit 5b62b6


3.8重命名分支

3.8.1覆盖已存在的同名分支  git branch -M <branchname> <newname>

3.8.2不覆盖已存在的同名分支 git branch -m <branchname> <newname>


3.9删除分支

git branch -d new2 (如果分支没有被合并怎会删除失败)

git branch -D new2 (即使分支没有被合并也会被删除)


4解决冲突

冲突较少时 直接查看有冲突的文件

冲突较多时 git merge tool 执行后会生成BACKUP\ BASE\LOCAL\REMOTE四个文件夹

然后自动调用冲突解决工具,解决冲突。解决后手动删除.orig文件(冲突解决前的备份文件)。最后提交


5标签

5.1创建标签

5.1.1位当前分支最近一次提交创建标签  git tag1.0 标签无法重命名

5.1.2为Contacts分支最近一次提交创建标签  git tag contacts_1.1contacts   也可以把标签命名问Contact/1.1

5.1.3为某次历史创建标签  git tag 1.14 e64jd83

5.2显示标签列表  git tag

5.3检出标签 git checkout 1.0  查看标签断面很方便的方法,但不能提交

5.4由标签创建分支  git branch b1.1.1.1

    git chenkout -b b1.0.1.0

5.5删除标签  git tag -d 1.0


6查看状态

6.1当前状态  git status

6.2历史状态 

6.1.1 git log

6.1.2  gitk:  gitk   查看当前分支的历史记录

gitk <branchname> 查看某分支的历史记录

gitk --all  查看所有分支

7其他

导出版本库   git archive --format=zip head>nb.zip

git archive --format=zip --predix=nb1.0/head>nb.zip

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值