diff --git a/utils/aosp-merge.sh b/utils/aosp-merge.sh
new file mode 100755
index 0000000..e08946b
--- /dev/null
+++ b/utils/aosp-merge.sh
@@ -0,0 +1,57 @@
+#!/bin/bash
+#
+# Copyright (C) 2016 OmniROM Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+echo -e "Enter the AOSP ref to merge"
+read ref
+
+cd ../../../
+
+while read path;
+    do
+
+    project=`echo android_${path} | sed -e 's/\//\_/g'`
+
+    echo ""
+    echo "====================================================================="
+    echo " PROJECT: ${project} -> [ ${path}/ ]"
+    echo ""
+
+    cd $path;
+
+    git merge --abort;
+
+    repo sync -d .
+
+    if git branch | grep "android-6.0-merge" > /dev/null; then
+        git branch -D android-6.0-merge > /dev/null
+    fi
+
+    repo start android-6.0-merge .
+
+    if ! git remote | grep "aosp" > /dev/null; then
+        git remote add aosp https://android.googlesource.com/platform/$path > /dev/null
+    fi
+
+    git fetch aosp
+
+    #echo "====================================================================="
+    #echo " Merging {$ref}"
+    #echo "====================================================================="
+    git merge $ref;
+
+    cd - > /dev/null
+
+done < vendor/omni/utils/omni-list
diff --git a/utils/omni-list b/utils/omni-list
new file mode 100644
index 0000000..4f4bc63
--- /dev/null
+++ b/utils/omni-list
@@ -0,0 +1,77 @@
+art
+bionic
+build
+dalvik
+development
+device/generic/mini-emulator-armv7-a-neon
+external/clang
+external/e2fsprogs
+external/f2fs-tools
+external/flac
+external/jhead
+external/jpeg
+external/libexif
+external/libnfc-nci
+external/libpng
+external/libxml2
+external/llvm
+external/lz4
+external/sepolicy
+external/skia
+external/tinyalsa
+external/tinycompress
+frameworks/av
+frameworks/base
+frameworks/ex
+frameworks/native
+frameworks/opt/colorpicker
+frameworks/opt/net/voip
+frameworks/opt/net/wifi
+frameworks/opt/telephony
+frameworks/opt/timezonepicker
+frameworks/support
+frameworks/webview
+frameworks/wilhelm
+hardware/broadcom/libbt
+hardware/broadcom/wlan
+hardware/invensense
+hardware/libhardware
+hardware/libhardware_legacy
+hardware/qcom/audio
+hardware/qcom/bt
+hardware/qcom/display
+hardware/qcom/gps
+hardware/qcom/keymaster
+hardware/qcom/media
+hardware/qcom/power
+hardware/qcom/wlan
+hardware/ril
+libcore
+packages/apps/Bluetooth
+packages/apps/Browser
+packages/apps/Camera2
+packages/apps/Contacts
+packages/apps/ContactsCommon
+packages/apps/Dialer
+packages/apps/Email
+packages/apps/Gallery2
+packages/apps/InCallUI
+packages/apps/Launcher3
+packages/apps/Nfc
+packages/apps/PackageInstaller
+packages/apps/QuickSearchBox
+packages/apps/Settings
+packages/apps/UnifiedEmail
+packages/inputmethods/LatinIME
+packages/providers/DownloadProvider
+packages/providers/MediaProvider
+packages/providers/TelephonyProvider
+packages/services/Telecomm
+packages/services/Telephony
+packages/wallpapers/Basic
+packages/wallpapers/PhaseBeam
+system/core
+system/extras
+system/media
+system/netd
+system/vold
diff --git a/utils/omni-push.sh b/utils/omni-push.sh
new file mode 100755
index 0000000..fc856d2
--- /dev/null
+++ b/utils/omni-push.sh
@@ -0,0 +1,45 @@
+#!/bin/bash
+#
+# Copyright (C) 2016 OmniROM Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+echo -e "Enter the username"
+read username
+
+url="gerrit.omnirom.org"
+port="29418"
+branch="android-6.0"
+
+cd ../../../
+
+while read path;
+    do
+
+    project=`echo android_${path} | sed -e 's/\//\_/g'`
+
+    echo ""
+    echo "====================================================================="
+    echo " PROJECT: ${project} -> [ ${path}/ ]"
+    echo ""
+
+    cd $path;
+
+    echo " Pushing..."
+    echo " git push --no-thin ssh://${username}@${url}:${port}/${project} HEAD:refs/heads/${branch}"
+    git push --no-thin ssh://${username}@${url}:${port}/${project} HEAD:refs/heads/${branch}
+    echo ""
+
+    cd - > /dev/null
+
+done < vendor/omni/utils/omni-list
