1. git add 添加文件到staged area.
2. git commit 会commit staged file ,有几个选项比较重要:-a 跳过staged
area,直接commit,后面加文件名也会使那个文件跳过stage,直接commit。但是前提是文件已经在index中了,新文件不会自动加入。
3.git status 查看从上次commit到目前的变化,git diff会更详细,但是它只包含应该要包含在staged area中却还未包含进去的变化,git diff --staged则列出来从上次commit到staged area的变化。
4. .gitignore文件可以设置哪些文件被排除进去,通常可以设.o, .a等文件。
5. git rm 用来remove文件。
6. git mv可以用来重命名文件。
7. git log用来查看日志,git log -p查看详细,gitk 是个图形化的查看工具。
8.Unstaging a Staged File可以用git reset HEAD <file>。
Unmodifying a Modified File可以用git checkout -- <file>。
git commit --amend用来取消上次的commit。
9. git remote显示所有的remote(加-v显示详细信息)。
git remote add [shortname] [url]用来添加remote。
git fetch [remote-name]只会pull下来全部的更动,但不会自动merge,但是git pull会自动merge。
git remote show [remote-name]可以看到一个remote的详细信息。
git remote rename用来改变一个remote的名字。
git remote rm删除一个remote。
10.git tag列出所有的tag。git show tag-name可以查看tag详细信息。git tag [-a] tag-name -m
message [commit-checksum]如果有-a 就添加一个annotated
tag,如果没有-a,就添加一个lightweight tag,如果后面要在某个commit之后添加一个tag,就加上checksum好了。
git push有个选项 --tags会把tags信息也push上去。
11.
git branch testing添加一个testing的branch.
git checkout testing切换到testing branch.
git branch -b branchname tagname
git push origin branchname // push remote branch for one tagname
git branch --track branchname |git baanch branchname origin/branchname
// checkout branchname
git checkout --track origin/branchname
12. 切换branch的时候,当前的branch不能有和要切换过去的branch冲突的uncommitted changes.
13. git merge branch-name 将branch-name
merge到当前branch.如果有conflict,可以用status查看状态,解决conflict之后用add
通知git已经解决。然后用commit commit the merge。
14.
git branch -d branch-name,但是这个branch必须被全部merge到HEAD中了。如果选项是-D的化,就不管它的merge status了。
15. git branch --merged只显示被HEAD完全包含的branch,--no-merged只显示没被HEAD完全包含的branch。
16.
git push (remote) (branch)把本地某个branch push到remote上去。
git push (remote) (local-branch-name):(remote-branch-name)可以把本地branch push到remote branch上去。
17.git fetch 下载下来的branch不能edit,必须要手动merge到本地branch之后才可以edit。
$ git checkout -b local-branch-name remote-name/remote-branch-name 可以把server上的branch下载下来,并且可以直接edit。
18.
Tracking Branches里面可以不必在pull和push后面加remote参数。git branch -r列出remote tracking branches.
19. git push [remotename] :[remote-branch]删除掉某个remote branch。
20. rebase可以获得和merge一样的效果,但是log记录更好,因为看起来没有分支。
git rebase
--onto newbase upstream branch会把从upstream到branch的改动rebase到newbase上去。git
rebase basebranch topicbranch会把topicbranch rebase到basebranch上。
21.
Do not rebase commits that you have pushed to a public repository.
22.git fetch默认会获取repo所有branch的进度,除非指定哪个branch。git push可以将某个branch push到repo中去。
23、 git reset --hard HEAD~3 会将最新的3次提交全部重置,就像没有提交过一样。
24、git stash — 暂存临时代码
可以将你当前未提交到本地(和服务器)的代码推入到Git的栈中,这时候你的工作区间和上一次提交的内容是完全一样的,所以你可以放心的修
Bug,等到修完Bug,提交到服务器上后,再使用’git stash apply’(stash中还有备份)将以前一半的工作应用回来。或者用"git stash pop"来将改的应用返回来,此时stash中清空 ,相当于调用了git stash clear来清空stlash
25、git config --global user.name="weina"
git config --global user.email=''weina@weina.com" 配置全局的name和email,以便再提交的时候,能看到是谁提交的
26、clone porject 用git clone username@ip:29418/projectPath
拷贝项目
使用 scp -p -P 29418 yourdomain:hooks/commit-msg .git/hooks/拷贝到你的项目中,可以通过commit后 gitk 查 看log日志有没有相应的changeId来确认。如果不拷贝这个hooks,在提交到gerrit时很容易发生错误。
27、使用utf8确定commit的字符集修改GIT_HOME/etc/gitconfig文件增加
[gui]
encoding=utf-8
[i18n]
commitencoding=utf-8
logoutputencoding=utf-8
分享到:
相关推荐
1 安装GIT 代码如下:$ sudo aptitude install git$ sudo aptitude install git-doc git-svn git-email git-gui gitk git软件包包含了大部分Git命令,是必装的软件包,第二行命令也是Git软件包,但是是单独发布的,...
Git是世界上最流行的分布式版本控制系统,它允许开发人员协作开发代码并跟踪每一次更改。"git压缩包下载git下载"这个标题和描述可能指的是提供Git的安装程序压缩包的下载服务。在本篇中,我们将深入探讨Git的核心...
接下来,你可以学习基本的Git命令,如`git clone`(克隆远程仓库)、`git add`(暂存更改)、`git commit`(提交更改)、`git push`(推送本地更改至远程仓库)和`git pull`(拉取远程仓库的更新)等。 总的来说,...
4. **命令行基础**:Git主要是通过命令行工具使用的,掌握常用的命令如`git clone`、`git add`、`git commit`、`git push`、`git pull`等是必不可少的。 5. **分支管理**:Git的分支机制强大且灵活,允许快速创建和...
对于团队项目,可以使用`git clone`下载远程仓库,`git pull`同步远程更新,`git push`推送本地更改,以及`git fetch`和`git merge`或`git rebase`来整合远程分支。 总之,Git-2.37.3-64-bit_3.exe是Git的64位...
Git是分布式版本控制系统,它在软件开发领域尤其是开源项目中起着至关重要的作用。Windows 64位Git安装包是专门为64位Windows操作系统设计的Git版本,确保在该平台上高效稳定地运行。官方下载的Git安装包可以保证其...
标题“Keil配置Git教程”指明了本文主要讨论的内容是关于如何在Keil开发环境中配置Git以进行软件项目的版本控制管理。Keil是一款常用于嵌入式系统开发的集成开发环境(IDE),而Git则是一种流行的分布式版本控制系统,...
Git是一个分布式版本控制系统,它最初由Linus Torvalds在2005年创建用于管理Linux内核的开发。Git的目的是快速高效地处理从小型到大型项目的所有事务。Git不仅是一个版本控制工具,它更是一个内容管理系统或文件系统...
Git for Windows 2017 最新版,Git-2.15.0 是Git的Windows适配版本,它为Windows用户提供了完整的Git功能,并且优化了在Windows环境下的使用体验。Git是一个分布式版本控制系统,由Linux之父Linus Torvalds开发,...
Git是世界上最流行的分布式版本控制系统,它允许开发者跟踪和管理代码变更,协同开发项目。在某些没有网络连接或者网络环境受限的场景下,离线安装Git变得尤为重要。本篇将详细介绍如何使用提供的Git离线rpm安装包在...
常见的命令包括`git init`用于初始化新的Git仓库,`git clone`用于复制远程仓库到本地,`git add`用于将文件添加到暂存区,`git commit`用于提交更改,`git push`用于将本地更改推送到远程仓库,以及`git pull`用于...
6.选中 Git GUI Here 右键新建(项),并重命名为command,command的值设置为 D:\Program Files\Git\cmd\git-gui.exe --working-dir %v,其中--working-dir和git-gui.exe之间有空格,--working-dir和%v之间也有空格 ...
Git与Github教程详细介绍了Git的工作机制,Git命令行的基础学习,Git-Eclipse和Nginx的准备工作,Git与Github分支体系,Git与Github的远程和本地工作原理,Git与Github克隆实战和最后的课程精华总结部分,可以帮助...
Git的基本操作包括初始化仓库(`git init`)、克隆仓库(`git clone`)、添加文件到暂存区(`git add`)、提交更改(`git commit`)、查看历史(`git log`)以及分支管理(`git branch`和`git merge`)等。...
Git权威指南 目 录 前 言 第1篇 初识Git 第1章 版本控制的前世和今生/ 2 1.1 黑暗的史前时代/ 2 1.2 CVS—开启版本控制大爆发/ 5 1.3 SVN—集中式版本控制集大成者/ 7 1.4 Git—Linus 的第二个伟大作品/ 9 第2章 ...
Git是世界上最流行的分布式版本控制系统,它允许开发者跟踪和管理代码变更。Git的使用涉及多个步骤,从安装到日常操作,每个环节都有其特定的命令和流程。 首先,安装Git非常简单,可以从Git官方网站...
Gitblit搭建及Git协作开发流程参考 本文档主要介绍了Gitblit的搭建和Git协作开发流程,旨在帮助创业团队和小型开发团队快速搭建自己的代码服务器。同时,文档也提供了基本的开发流程,代码提交、代码上传、代码...
Git是世界上最流行的分布式版本控制系统,它允许开发者跟踪和管理代码变更,从而实现高效的协作和版本控制。本教程将深入讲解如何在自己的计算机上创建一个Git服务器端,建立远程代码仓库,以便团队成员可以进行协作...
git 客户端、服务端安装、代码上传和 Eclipse 安装 Git 插件 git 客户端安装是在使用 Git 版本控制系统的第一步。安装客户端可以从官方网站下载安装包,或者使用包管理器进行安装。例如,在 Windows 平台上,可以...
Gitblit是一款开源的、轻量级的Git服务器管理工具,专为个人和小型团队设计。这个"gitblit-1.9.3.zip"压缩包包含的是Gitblit的1.9.3版本,适合在Windows操作系统上安装。由于官方下载速度可能较慢,这里提供的链接...