git 常用语句总结

部分转载自:http://blog.csdn.net/dengsilinming/article/details/8000622

git 作为常用的版本管理工具,在开发中被大量使用,基于其的可视化工具比较好用的是sourceTree 和tortoiseGit 

期中sourceTree 在windows 和 mac端都有  tortoiseGit 有windows版本  mac版目前还没有。

下面记录下 常用的git 命令行  

Git常用操作命令:

1) 远程仓库相关命令

检出仓库:$ git clone git://github.com/jquery/jquery.git

查看远程仓库:$ git remote -v

添加远程仓库:$ git remote add [name] [url]

删除远程仓库:$ git remote rm [name]

修改远程仓库:$ git remote set-url --push [name] [newUrl]

拉取远程仓库:$ git pull [remoteName] [localBranchName]

推送远程仓库:$ git push [remoteName] [localBranchName]

 

*如果想把本地的某个分支test提交到远程仓库,并作为远程仓库的master分支,或者作为另外一个名叫test的分支,如下:

$git push origin test:master         // 提交本地test分支作为远程的master分支

$git push origin test:test              // 提交本地test分支作为远程的test分支

 

2)分支(branch)操作相关命令

查看本地分支:$ git branch

查看远程分支:$ git branch -r

创建本地分支:$ git branch [name] ----注意新分支创建后不会自动切换为当前分支

切换分支:$ git checkout [name]

创建新分支并立即切换到新分支:$ git checkout -b [name]

删除分支:$ git branch -d [name] ---- -d选项只能删除已经参与了合并的分支,对于未有合并的分支是无法删除的。如果想强制删除一个分支,可以使用-D选项

合并分支:$ git merge [name] ----将名称为[name]的分支与当前分支合并

创建远程分支(本地分支push到远程):$ git push origin [name]

删除远程分支:$ git push origin :heads/[name] 或 $ gitpush origin :[name] 

 

*创建空的分支:(执行命令之前记得先提交你当前分支的修改,否则会被强制删干净没得后悔)

$git symbolic-ref HEAD refs/heads/[name]

$rm .git/index

$git clean -fdx

 

3)版本(tag)操作相关命令

查看版本:$ git tag

创建版本:$ git tag [name]

删除版本:$ git tag -d [name]

查看远程版本:$ git tag -r

创建远程版本(本地版本push到远程):$ git push origin [name]

删除远程版本:$ git push origin :refs/tags/[name]

合并远程仓库的tag到本地:$ git pull origin --tags

上传本地tag到远程仓库:$ git push origin --tags

创建带注释的tag:$ git tag -a [name] -m 'yourMessage'

 

4) 子模块(submodule)相关操作命令

添加子模块:$ git submodule add [url] [path]

   如:$git submodule add git://github.com/soberh/ui-libs.git src/main/webapp/ui-libs

初始化子模块:$ git submodule init  ----只在首次检出仓库时运行一次就行

更新子模块:$ git submodule update ----每次更新或切换分支后都需要运行一下

删除子模块:(分4步走哦)

 1) $ git rm --cached [path]

 2) 编辑“.gitmodules”文件,将子模块的相关配置节点删除掉

 3) 编辑“ .git/config”文件,将子模块的相关配置节点删除掉

 4) 手动删除子模块残留的目录

 

5)忽略一些文件、文件夹不提交

在仓库根目录下创建名称为“.gitignore”的文件,写入不需要的文件夹名或文件,每个元素占一行即可,如

target

bin

*.db

 

=====================

Git 常用命令

git branch 查看本地所有分支
git status 查看当前状态 
git commit 提交 
git branch -a 查看所有的分支
git branch -r 查看本地所有分支
git commit -am "init" 提交并且加注释 
git remote add origin git@192.168.1.119:ndshow
git push origin master 将文件给推到服务器上 
git remote show origin 显示远程库origin里的资源 
git push origin master:develop
git push origin master:hb-dev 将本地库与服务器上的库进行关联 
git checkout --track origin/dev 切换到远程dev分支
git branch -D master develop 删除本地库develop
git checkout -b dev 建立一个新的本地分支dev
git merge origin/dev 将分支dev与当前分支进行合并
git checkout dev 切换到本地dev分支
git remote show 查看远程库
git add .
git rm 文件名(包括路径) 从git中删除指定文件
git clone git://github.com/schacon/grit.git 从服务器上将代码给拉下来
git config --list 看所有用户
git ls-files 看已经被提交的
git rm [file name] 删除一个文件
git commit -a 提交当前repos的所有的改变
git add [file name] 添加一个文件到git index
git commit -v 当你用-v参数的时候可以看commit的差异
git commit -m "This is the message describing the commit" 添加commit信息
git commit -a -a是代表add,把所有的change加到git index里然后再commit
git commit -a -v 一般提交命令
git log 看你commit的日志
git diff 查看尚未暂存的更新
git rm a.a 移除文件(从暂存区和工作区中删除)
git rm --cached a.a 移除文件(只从暂存区中删除)
git commit -m "remove" 移除文件(从Git中删除)
git rm -f a.a 强行移除修改后文件(从暂存区和工作区中删除)
git diff --cached 或 $ git diff --staged 查看尚未提交的更新
git stash push 将文件给push到一个临时空间中
git stash pop 将文件从临时空间pop下来
---------------------------------------------------------
git remote add origin git@github.com:username/Hello-World.git
git push origin master 将本地项目给提交到服务器中
-----------------------------------------------------------
git pull 本地与服务器端同步
-----------------------------------------------------------------
git push (远程仓库名) (分支名) 将本地分支推送到服务器上去。
git push origin serverfix:awesomebranch
------------------------------------------------------------------
git fetch 相当于是从远程获取最新版本到本地,不会自动merge
git commit -a -m "log_message" (-a是提交所有改动,-m是加入log信息) 本地修改同步至服务器端 :
git branch branch_0.1 master 从主分支master创建branch_0.1分支
git branch -m branch_0.1 branch_1.0 将branch_0.1重命名为branch_1.0
git checkout branch_1.0/master 切换到branch_1.0/master分支
du -hs

-----------------------------------------------------------
mkdir WebApp
cd WebApp
git init
touch README
git add README
git commit -m 'first commit'
git remote add origin git@github.com:daixu/WebApp.git
git push -u origin master



git删除远端分支方法:


git push origin --delete <branchName>

删除tag

git push origin --delete tag <tagname>

可以使用这种语法,推送一个空分支到远程分支,其实就相当于删除远程分支:

git push origin :<branchName>

这是删除tag的方法,推送一个空tag到远程tag:

1
2
git tag -d <tagname>
git push origin :refs/tags/<tagname>


更新远端分支情况

git fetch -p

查看所有分支

git branch -a

查看分支情况

git status


但需要回滚时候执行顺序是 先使用git reflog 查看之前推送的head number


然后使用

git reset --hard + 需要回滚版本的head number


如果需要提交的时候 使用强制提交命令

git push -f origin master

<think>好的,我现在需要帮助用户查找如何使用Git从远程仓库拉取代码的命令。首先,我要理解用户的具体需求。用户提到了“git pull remote repository command”,看起来他们想知道如何用git pull命令从远程仓库拉取代码。 根据用户提供的引用内容,我需要从引用中寻找相关的信息。引用[1]提到,如果有多个远程仓库,直接使用git pull可能不够,需要指定远程仓库名称,比如git pull origin或git pull upstream。这说明git pull后面可能需要跟远程仓库的名字和分支名。 引用[2]中有用户常用的git方法,其中提到了git clone和git push origin master。虽然主要讲的是克隆和推送,但这也暗示了远程仓库的操作通常需要指定origin这样的远程名称。 引用[3]详细解释了git fetch的用法,比如git fetch origin,然后合并到本地分支。这里可能和git pull相关,因为git pull实际上是git fetch加上git merge的组合操作。所以用户可能需要了解git pull和git fetch的区别。 引用[4]和[5]讨论了git pull失败的情况,比如无法读取远程仓库,解决办法是设置远程仓库的URL。这提示用户可能需要检查远程仓库的配置是否正确,尤其是在遇到错误时。 接下来,我需要将这些信息整合成一个清晰的回答。首先,基本命令是git pull,但需要指定远程仓库和分支,比如git pull origin main。如果有多个远程仓库,必须明确指定。然后,可能需要初始化本地仓库并添加远程仓库,比如使用git remote add origin <url>,这在引用[2]中提到过。此外,如果遇到错误,需要检查远程仓库的URL是否正确,可以用git remote set-url来修改,如引用[4]所示。 另外,用户可能需要了解git fetch和git pull的区别,引用[3]中提到的git fetch后接git merge,而git pull一步完成这两个操作。这可能也是需要解释的部分。 最后,用户可能需要示例代码和常见问题解决方法,比如如何解决无法拉取的问题,设置正确的URL或者检查权限。引用[5]中的链接虽然无法直接查看,但可以推测可能涉及网络问题或认证问题。 总结回答的结构应该是:先给出基本命令,说明参数的作用,然后给出具体步骤,如初始化仓库、添加远程、拉取代码。接着解释相关概念,如远程仓库名称和分支,最后提供常见问题解决办法。同时,根据用户提供的引用,适当添加引用标注。</think>### 如何从远程仓库拉取代码? #### 基本命令 1. **拉取远程仓库最新代码**:使用 `git pull` 命令,语法为: ```bash git pull <远程仓库名称> <分支名称> ``` 例如: ```bash git pull origin main # 从远程仓库origin拉取main分支的代码 ``` 如果本地分支已与远程分支关联,可简化为 `git pull`[^1][^3]。 2. **初始化本地仓库并关联远程仓库**(若未初始化): ```bash git init git remote add origin <远程仓库URL> # 添加远程仓库,命名为origin[^2] git pull origin main # 拉取代码 ``` --- #### 关键概念说明 - **远程仓库名称**:默认远程仓库名为 `origin`,可通过 `git remote -v` 查看所有关联的远程仓库[^2][^3]。 - **分支名称**:若省略分支名,默认拉取与当前本地分支关联的远程分支[^1]。 - **`git pull` 与 `git fetch` 的区别**: - `git fetch` 仅下载远程更新但不自动合并,需手动执行 `git merge`。 - `git pull = git fetch + git merge`,直接合并到本地分支。 --- #### 常见问题解决 1. **错误:`Could not read from remote repository`** - **原因**:远程仓库URL错误或权限不足。 - **解决方法**: ```bash git remote set-url origin <新URL> # 更新远程仓库URL[^4] git pull origin main ``` 2. **多远程仓库场景** 若有多个远程仓库(如 `origin` 和 `upstream`),需明确指定仓库和分支: ```bash git pull upstream dev # 从upstream拉取dev分支 ``` --- #### 操作示例 假设远程仓库URL为 `https://github.com/user/repo.git`: ```bash # 克隆仓库(自动关联origin) git clone https://github.com/user/repo.git cd repo # 拉取最新代码 git pull origin main # 若需强制覆盖本地修改 git fetch --all git reset --hard origin/main ``` ---
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值