Customer updates are gone from Local Update Set after Git commit

JennyHu
Tera Guru
Tera Guru

I'm wondering if someone can help me here.

I started working on a scoped custom application and created a couple Local Update Sets to track my changes.   Later on, I decided to give Git Source Control a try.   So I linked to source control, created a development branch and commit changes to remote.     Things are getting committed to Git fine.

However, I realize that my customer updates and sometimes even the entire Local Update Set are gone from ServiceNow after the Git commit (if I go to System Update Sets > Local Update Sets).   Is this the expected behaviour to have customer updates disappear locally?

Now say I have completed my development, and need to push my changes to staging for testing, then production.. what would the process be? Once Git integration is established, does that mean that we can no longer use Local Update Set to track changes?

I'm not too familiar with how Git works with ServiceNow yet.   If I want to switch everything back to use Update Sets, is it possible to unlink the Git integration, use the XML committed to Git, and import it back to an Update Set?

Thank you in advance for your help!

Jenny

1 ACCEPTED SOLUTION

JennyHu
Tera Guru
Tera Guru

An update on this issue... I submitted a ticket to HI, and this is the response I received:



"Thank you for your patience. I can confirm that yes, we delete the sys_update_xml records when exporting an application to source control. This is how we track if an application is dirty or not. It is expected behavior.



If you would like to use update sets to export the application, you can do so via the "Publish to update set" UI Action on the application record.



1. Go to the application:



2. Under Related Links, click 'Publish to Update Set...'"



When I asked "if the update set will capture all the changes including the ones that I committed to source control?", HI replied:



"The update set will contain the current version, the latest update, of each application file in the application.



When you have a moment, additional details can be found here,



https://docs.servicenow.com/bundle/istanbul-application-development/page/build/applications/task/t_P..."



So it does look like I can use "Publish to Update Set" feature to get all the customer updates for my custom scoped app.


View solution in original post

9 REPLIES 9

I don't think you're doing anything wrong. This might be worthy of a HI ticket. I can't imagine a GIT commit stripping anything out...


JennyHu
Tera Guru
Tera Guru

An update on this issue... I submitted a ticket to HI, and this is the response I received:



"Thank you for your patience. I can confirm that yes, we delete the sys_update_xml records when exporting an application to source control. This is how we track if an application is dirty or not. It is expected behavior.



If you would like to use update sets to export the application, you can do so via the "Publish to update set" UI Action on the application record.



1. Go to the application:



2. Under Related Links, click 'Publish to Update Set...'"



When I asked "if the update set will capture all the changes including the ones that I committed to source control?", HI replied:



"The update set will contain the current version, the latest update, of each application file in the application.



When you have a moment, additional details can be found here,



https://docs.servicenow.com/bundle/istanbul-application-development/page/build/applications/task/t_P..."



So it does look like I can use "Publish to Update Set" feature to get all the customer updates for my custom scoped app.


ngcortes
Kilo Contributor

This is what I've been doing for a while, but the issue is that publishing an app to an update set does not preserve file  deletions. This has been a problem when we try to update list view configurations for example. The old files remain, so we have to create another one-off update set to delete the old files.

Perhaps the bigger issue is that re-uploading the entire app is a very slow process. It would be nice to be able to convert a Github commit into an update set delta.

Hi,

I believe deleted records are not captured using the publish via Application Repository method as well.  From what I have read, we can set record's active state to false rather than deleting the record.  More from this post:  https://community.servicenow.com/community?id=community_blog&sys_id=29ace225dbd0dbc01dcaf3231f961953

Thanks,
Jenny

paul_gerigk
Tera Guru